forked from pool/glibc
Andreas Schwab
2d58c46aab
- dl-show-auxv.patch: Fix output of LD_SHOW_AUXV=1 - s390-vx-vxe-hwcap.patch: S390: Mark vx and vxe as important hwcap - taisho-era-string.patch: ja_JP: Change the offset for Taisho gan-nen from 2 to 1 (BZ #24162) - malloc-tracing-hooks.patch: malloc: Set and reset all hooks for tracing (BZ #16573) - pldd-inf-loop.patch: elf: Fix pldd (BZ#18035) - malloc-large-bin-corruption-check.patch: malloc: Check for large bin list corruption when inserting unsorted chunk (BZ #24216) - wfile-sync-crash.patch: Fix crash in _IO_wfile_sync (BZ #20568) OBS-URL: https://build.opensuse.org/request/show/703415 OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=527
20 lines
969 B
Diff
20 lines
969 B
Diff
Index: glibc-2.29/malloc/malloc.c
|
|
===================================================================
|
|
--- glibc-2.29.orig/malloc/malloc.c
|
|
+++ glibc-2.29/malloc/malloc.c
|
|
@@ -3876,10 +3876,14 @@ _int_malloc (mstate av, size_t bytes)
|
|
{
|
|
victim->fd_nextsize = fwd;
|
|
victim->bk_nextsize = fwd->bk_nextsize;
|
|
+ if (__glibc_unlikely (fwd->bk_nextsize->fd_nextsize != fwd))
|
|
+ malloc_printerr ("malloc(): largebin double linked list corrupted (nextsize)");
|
|
fwd->bk_nextsize = victim;
|
|
victim->bk_nextsize->fd_nextsize = victim;
|
|
}
|
|
bck = fwd->bk;
|
|
+ if (bck->fd != fwd)
|
|
+ malloc_printerr ("malloc(): largebin double linked list corrupted (bk)");
|
|
}
|
|
}
|
|
else
|