Merge pull request #118 from vird/patch-1

Array proto crash fix
This commit is contained in:
Andrey Sidorov 2020-05-21 20:13:29 +10:00 committed by GitHub
commit b50b222a74
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -217,25 +217,26 @@ function packValueMask(reqname, values)
{ {
var v = reqValueMask[value]; var v = reqValueMask[value];
if (v) { if (v) {
var valueBit = v.mask; var valueBit = v.mask;
if (!valueBit) if (!valueBit)
throw new Error(reqname + ': incorrect value param ' + value); throw new Error(reqname + ': incorrect value param ' + value);
masksList.push(valueBit); masksList.push(valueBit);
bitmask |= valueBit; bitmask |= valueBit;
} }
} }
/* numeric sort */ /* numeric sort */
masksList.sort(function(a, b) { masksList.sort(function(a, b) {
return a - b; return a - b;
}); });
var args = []; var args = [];
for (m in masksList) for (var i=0,length=masksList.length;i<length;i++)
{ {
var valueName = reqValueMaskName[masksList[m]]; var value = masksList[i];
format += reqValueMask[valueName].format var valueName = reqValueMaskName[value];
args.push( values[valueName] ); format += reqValueMask[valueName].format
args.push( values[valueName] );
} }
return [format, bitmask, args] return [format, bitmask, args]
} }