On Wed, 8 Dec 2004, Steve Kargl wrote: SK>On Wed, Dec 08, 2004 at 04:07:10PM -0800, Steve Kargl wrote: SK>> SK>> troutmask:root[225] find /usr/obj/ -name make.core SK>> /usr/obj/usr/src/sys/SPEW/make.core SK>> troutmask:root[226] gdb /usr/bin/make /usr/obj/usr/src/sys/SPEW/make.core SK>> SK>> #0 Lst_Remove (list=0x5580a0, ln=0x0) SK>> at /usr/src/usr.bin/make/lst.lib/lstRemove.c:74 SK>> 74 if (ln->nextPtr != NULL) SK>> (gdb) bt SK>> #0 Lst_Remove (list=0x5580a0, ln=0x0) SK>> at /usr/src/usr.bin/make/lst.lib/lstRemove.c:74 SK>> #1 0x00000000004052bb in Dir_Destroy (pp=0x81e780) SK>> at /usr/src/usr.bin/make/dir.c:1143 SK>> #2 0x0000000000405300 in Dir_ClearPath (path=0x5580a0) SK>> at /usr/src/usr.bin/make/dir.c:1172 SK>> #3 0x0000000000404283 in Dir_End () at /usr/src/usr.bin/make/dir.c:265 SK>> #4 0x000000000040a8da in main (argc=2, argv=0x7fffffffe3e0) SK>> at /usr/src/usr.bin/make/main.c:888 SK>> SK> SK>Looking at the diff between the 1.17 and 1.16, I suspect this chunk SK>of code in Lst_Remove: SK> SK>- if (!Lst_Valid(list) || !Lst_NodeValid(ln, list)) { SK>- return (FAILURE); SK>- } SK> SK>should have been replaced by SK> SK> if (list == NULL || ln == NULL) SK> return; I see no sense in those runtime checks because they just hide the real problems (as are uninitialized lists or removing items not on the list). Nobody actually checked the return codes so that was just 'close your eyes and continue'. I'd rather have the root problem fixed. I have a look into this. hartiReceived on Thu Dec 09 2004 - 07:50:46 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:24 UTC