Fix assertion in malloc.c:tcache_get.
One of the warnings that appears with -Wextra is "ordered comparison of pointer with integer zero" in malloc.c:tcache_get, for the assertion: assert (tcache->entries[tc_idx] > 0); Indeed, a "> 0" comparison does not make sense for tcache->entries[tc_idx], which is a pointer. My guess is that tcache->counts[tc_idx] is what's intended here, and this patch changes the assertion accordingly. Tested for x86_64. * malloc/malloc.c (tcache_get): Compare tcache->counts[tc_idx] with 0, not tcache->entries[tc_idx]. (cherry picked from commit 77dc0d8643aa99c92bf671352b0a8adde705896f)
This commit is contained in:
parent
8646009efd
commit
9a3ff995bd
|
@ -1,3 +1,8 @@
|
|||
2019-02-04 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
* malloc/malloc.c (tcache_get): Compare tcache->counts[tc_idx]
|
||||
with 0, not tcache->entries[tc_idx].
|
||||
|
||||
2019-02-06 Stefan Liebler <stli@linux.ibm.com>
|
||||
|
||||
[BZ #23403]
|
||||
|
|
|
@ -2948,7 +2948,7 @@ tcache_get (size_t tc_idx)
|
|||
{
|
||||
tcache_entry *e = tcache->entries[tc_idx];
|
||||
assert (tc_idx < TCACHE_MAX_BINS);
|
||||
assert (tcache->entries[tc_idx] > 0);
|
||||
assert (tcache->counts[tc_idx] > 0);
|
||||
tcache->entries[tc_idx] = e->next;
|
||||
--(tcache->counts[tc_idx]);
|
||||
e->key = NULL;
|
||||
|
|
Loading…
Reference in New Issue