Actually, you are entirely correct. I had forgotten that "both" the chunk
and bin lists were circular. The change will be reverted.
Earnie, you are going to have to do some more investigating.
-- Jeff J.
Christopher Faylor wrote:
On Tue, Feb 18, 2003 at 05:35:14PM -0500, J. Johnston wrote:
Patch checked in, thanks.
Isn't this a "why is the pointer NULL?" type of situation? It seems like
checking for null is papering over a possible problem.
cgf
------------------------------------------------------------------------
2003.02.18 Earnie Boyd <earnie at users dot sf dot net>
* libc/stdlib/mallocr.c (unlink): Don't assign a value to a pointer
with a NULL value.
Index: mallocr.c
===================================================================
RCS file: /cvs/src/src/newlib/libc/stdlib/mallocr.c,v
retrieving revision 1.9
diff -u -3 -p -r1.9 mallocr.c
--- mallocr.c 11 Oct 2002 10:28:30 -0000 1.9
+++ mallocr.c 18 Feb 2003 21:40:05 -0000
@@ -1936,8 +1936,8 @@ static void do_check_malloced_chunk(p, s
{
\
BK =
P->bk; \
FD =
P->fd; \
- FD->bk =
BK; \
- BK->fd =
FD; \
+ if (FD) FD->bk =
BK; \
+ if (BK) BK->fd =
FD; \
}
\
/* Place p as the last remainder */