mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-03-05 10:58:14 +00:00
BUILD: compression: make gcc 10 happy with free_zlib()
In issue #685 gcc 10 seems to find a null pointer deref in free_zlib(). There is no such case because all possible pools are tested and there's no other one in zlib, except if there's a bug or memory corruption somewhere else. The code used to be written like this to make sure that any such bug couldn't remain unnoticed. Now gcc 10 sees this theorical code path and complains, so let's just change the code to place an explicit crash in case of no match (which must never happen). This might be backported if other versions are affected.
This commit is contained in:
parent
ff78fcdd7f
commit
d999a49663
@ -490,6 +490,11 @@ static void free_zlib(void *opaque, void *ptr)
|
||||
pool = zlib_pool_head;
|
||||
else if (ptr == ctx->zlib_pending_buf)
|
||||
pool = zlib_pool_pending_buf;
|
||||
else {
|
||||
// never matched, just to silence gcc
|
||||
ABORT_NOW();
|
||||
return;
|
||||
}
|
||||
|
||||
pool_free(pool, ptr);
|
||||
_HA_ATOMIC_SUB(&zlib_used_memory, pool->size);
|
||||
|
Loading…
Reference in New Issue
Block a user