0001-psql-Make-ParseVariableDouble-reject-values-above-ma.patch
text/x-patch
Filename: 0001-psql-Make-ParseVariableDouble-reject-values-above-ma.patch
Type: text/x-patch
Part: 0
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch 0001
Subject: psql: Make ParseVariableDouble reject values above max
| File | + | − |
|---|---|---|
| src/bin/psql/variables.c | 1 | 0 |
From dde5e00fe368a323b685e154896ef2905f91176e Mon Sep 17 00:00:00 2001
From: Sven Klemm <sven@timescale.com>
Date: Fri, 8 May 2026 17:24:51 +0200
Subject: [PATCH] psql: Make ParseVariableDouble reject values above max
When the parsed value exceeded max, ParseVariableDouble logged the
"must be less than" error but then fell through to assign *result and
return true, contradicting both its docstring (caller's *result is
left untouched on failure) and the documented [min,max] contract. The
lower-bound branch already returns false; mirror that behavior on the
upper bound.
---
src/bin/psql/variables.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/bin/psql/variables.c b/src/bin/psql/variables.c
index f2a28bc9820..8060f2959cc 100644
--- a/src/bin/psql/variables.c
+++ b/src/bin/psql/variables.c
@@ -224,6 +224,7 @@ ParseVariableDouble(const char *value, const char *name, double *result, double
if (name)
pg_log_error("invalid value \"%s\" for variable \"%s\": must be less than %.2f",
value, name, max);
+ return false;
}
*result = dblval;
return true;
--
2.54.0