Skip to content

Commit 4fef13e

Browse files
authored
Merge pull request #26 from get-convex/lee/round-input-integers
assert that offset is an integer
2 parents 75b3a2f + f9b662e commit 4fef13e

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

src/component/btree.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,12 @@ export async function atOffsetHandler(
388388
ctx: { db: DatabaseReader },
389389
args: { offset: number; k1?: Key; k2?: Key; namespace?: Namespace },
390390
) {
391+
if (args.offset < 0) {
392+
throw new Error("offset must be non-negative");
393+
}
394+
if (!Number.isInteger(args.offset)) {
395+
throw new Error("offset must be an integer");
396+
}
391397
const tree = await getTree(ctx.db, args.namespace);
392398
if (tree === null) {
393399
throw new ConvexError("tree is empty");
@@ -410,6 +416,12 @@ export async function atNegativeOffsetHandler(
410416
ctx: { db: DatabaseReader },
411417
args: { offset: number; k1?: Key; k2?: Key; namespace?: Namespace },
412418
) {
419+
if (args.offset < 0) {
420+
throw new Error("offset must be non-negative");
421+
}
422+
if (!Number.isInteger(args.offset)) {
423+
throw new Error("offset must be an integer");
424+
}
413425
const tree = await getTree(ctx.db, args.namespace);
414426
if (tree === null) {
415427
throw new ConvexError("tree is empty");

0 commit comments

Comments
 (0)