mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-04 18:37:23 +02:00
Another portability fix for tzcode2016g update.
clang points out that SIZE_MAX wouldn't fit into an int, which means this comparison is pretty useless. Per report from Thomas Munro.
This commit is contained in:
parent
ab1c96e19e
commit
f5d177632e
@ -424,9 +424,8 @@ growalloc(void *ptr, size_t itemsize, int nitems, int *nitems_alloc)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
int nitems_max = INT_MAX - WORK_AROUND_QTBUG_53071;
|
int nitems_max = INT_MAX - WORK_AROUND_QTBUG_53071;
|
||||||
int amax = nitems_max < SIZE_MAX ? nitems_max : SIZE_MAX;
|
|
||||||
|
|
||||||
if ((amax - 1) / 3 * 2 < *nitems_alloc)
|
if ((nitems_max - 1) / 3 * 2 < *nitems_alloc)
|
||||||
memory_exhausted(_("int overflow"));
|
memory_exhausted(_("int overflow"));
|
||||||
*nitems_alloc = *nitems_alloc + (*nitems_alloc >> 1) + 1;
|
*nitems_alloc = *nitems_alloc + (*nitems_alloc >> 1) + 1;
|
||||||
return erealloc(ptr, size_product(*nitems_alloc, itemsize));
|
return erealloc(ptr, size_product(*nitems_alloc, itemsize));
|
||||||
|
Loading…
Reference in New Issue
Block a user