Skip to content

Commit e07659a

Browse files
committed
fixup! sqlite: validate StatementSync.run() integers
1 parent 01f2928 commit e07659a

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

src/node_sqlite.cc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,15 +86,15 @@ inline MaybeLocal<Value> IntegerToValue(Isolate* isolate,
8686
return BigInt::New(isolate, value);
8787
}
8888

89-
if (value >= -kMaxSafeJsInteger && value <= kMaxSafeJsInteger) {
90-
return Number::New(isolate, value);
89+
if (value < -kMaxSafeJsInteger || value > kMaxSafeJsInteger) {
90+
THROW_ERR_OUT_OF_RANGE(
91+
isolate,
92+
"Value is too large to be represented as a JavaScript number: %" PRId64,
93+
value);
94+
return MaybeLocal<Value>();
9195
}
9296

93-
THROW_ERR_OUT_OF_RANGE(
94-
isolate,
95-
"Value is too large to be represented as a JavaScript number: %" PRId64,
96-
value);
97-
return MaybeLocal<Value>();
97+
return Number::New(isolate, value);
9898
}
9999

100100
#define CHECK_ERROR_OR_THROW(isolate, db, expr, expected, ret) \

0 commit comments

Comments
 (0)