Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Dec 2004 17:06:58 -0800
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        freebsd-current@freebsd.org
Subject:   Re: make(1) is broken
Message-ID:  <20041209010658.GA14890@troutmask.apl.washington.edu>
In-Reply-To: <20041209000710.GB4674@troutmask.apl.washington.edu>
References:  <20041209000148.GA4674@troutmask.apl.washington.edu> <20041209000710.GB4674@troutmask.apl.washington.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Dec 08, 2004 at 04:07:10PM -0800, Steve Kargl wrote:
> 
> troutmask:root[225] find /usr/obj/ -name make.core 
> /usr/obj/usr/src/sys/SPEW/make.core
> troutmask:root[226] gdb /usr/bin/make /usr/obj/usr/src/sys/SPEW/make.core
> 
> #0  Lst_Remove (list=0x5580a0, ln=0x0)
>     at /usr/src/usr.bin/make/lst.lib/lstRemove.c:74
> 74          if (ln->nextPtr != NULL)
> (gdb) bt
> #0  Lst_Remove (list=0x5580a0, ln=0x0)
>     at /usr/src/usr.bin/make/lst.lib/lstRemove.c:74
> #1  0x00000000004052bb in Dir_Destroy (pp=0x81e780)
>     at /usr/src/usr.bin/make/dir.c:1143
> #2  0x0000000000405300 in Dir_ClearPath (path=0x5580a0)
>     at /usr/src/usr.bin/make/dir.c:1172
> #3  0x0000000000404283 in Dir_End () at /usr/src/usr.bin/make/dir.c:265
> #4  0x000000000040a8da in main (argc=2, argv=0x7fffffffe3e0)
>     at /usr/src/usr.bin/make/main.c:888
> 

Looking at the diff between the 1.17 and 1.16, I suspect this chunk
of code in Lst_Remove:

-    if (!Lst_Valid(list) || !Lst_NodeValid(ln, list)) {
-	    return (FAILURE);
-    }

should have been replaced by

    if (list == NULL || ln == NULL)
	    return;


-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041209010658.GA14890>