Re: [PATCH] psql: Make ParseVariableDouble reject values above max
Daniel Gustafsson <daniel@yesql.se>
From: Daniel Gustafsson <daniel@yesql.se>
To: Sven Klemm <sven@tigerdata.com>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2026-05-09T18:44:36Z
Lists: pgsql-hackers
> On 8 May 2026, at 17:39, Sven Klemm <sven@tigerdata.com> wrote:
>
> Hello,
>
> ParseVariableDouble() in src/bin/psql/variables.c is asymmetric in how
> it handles the [min, max] bounds it documents. The lower-bound branch
> correctly returns false, but the upper-bound branch logs the error and
> then falls through to assign *result and return true. The function's
> contract ("the value must be within the range [min,max] in order to be
> considered valid"; "if unsuccessful, *result isn't clobbered") is
> broken on the upper-bound path.
Indeed, that's a silly bug, not sure how I could have missed that. We are
currently in freeze for the upcoming minor releases but I have this staged to
go in directly after. Thanks for the report.
--
Daniel Gustafsson