projects
/
users
/
simon
/
postgres.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
84663ad
)
Throw an error for negative LIMIT or OFFSET values, instead of silently
author
Tom Lane
<tgl@sss.pgh.pa.us>
Mon, 10 Mar 2008 03:37:59 +0000
(
03:37
+0000)
committer
Tom Lane
<tgl@sss.pgh.pa.us>
Mon, 10 Mar 2008 03:37:59 +0000
(
03:37
+0000)
treating them as zero. Simon Riggs
src/backend/executor/nodeLimit.c
patch
|
blob
|
blame
|
history
diff --git
a/src/backend/executor/nodeLimit.c
b/src/backend/executor/nodeLimit.c
index 0ef5e8593ea1b3282288153f000038f35ba5f06a..f748ec6e918c70fc60b841d1e7e1b1e9799845c4 100644
(file)
--- a/
src/backend/executor/nodeLimit.c
+++ b/
src/backend/executor/nodeLimit.c
@@
-246,7
+246,9
@@
recompute_limits(LimitState *node)
{
node->offset = DatumGetInt64(val);
if (node->offset < 0)
- node->offset = 0;
+ ereport(ERROR,
+ (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
+ errmsg("OFFSET must not be negative")));
}
}
else
@@
-271,7
+273,9
@@
recompute_limits(LimitState *node)
{
node->count = DatumGetInt64(val);
if (node->count < 0)
- node->count = 0;
+ ereport(ERROR,
+ (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
+ errmsg("LIMIT must not be negative")));
node->noCount = false;
}
}