Re: Integer undeflow in fprintf in dsa.c
От | Daniel Gustafsson |
---|---|
Тема | Re: Integer undeflow in fprintf in dsa.c |
Дата | |
Msg-id | DADF07F1-02BE-4B97-B8FD-EEC2AD02F999@yesql.se обсуждение исходный текст |
Ответ на | Integer undeflow in fprintf in dsa.c (Ильясов Ян <ianilyasov@outlook.com>) |
Ответы |
Re: Integer undeflow in fprintf in dsa.c
|
Список | pgsql-hackers |
> On 20 Feb 2024, at 12:28, Ильясов Ян <ianilyasov@outlook.com> wrote: > fprintf(stderr, > " segment bin %zu (at least %d contiguous pages free):\n", > i, 1 << (i - 1)); > > In case i equals zero user will get "at least -2147483648 contiguous pages free". That does indeed seem like an oversight. > I believe that this is a mistake, and fprintf should print "at least 0 contiguous pages free" > in case i equals zero. The message "at least 0 contiguous pages free" reads a bit nonsensical though, wouldn't it be preferrable to check for i being zero and print a custom message for that case? Something like the below untested sketch? + if (i == 0) + fprintf(stderr, + " segment bin %zu (no contiguous free pages):\n", i); + else + fprintf(stderr, + " segment bin %zu (at least %d contiguous pages free):\n", + i, 1 << (i - 1)); -- Daniel Gustafsson
В списке pgsql-hackers по дате отправления: