$include_dir="/home/hyper-archives/boost-build/include"; include("$include_dir/msg-header.inc") ?>
From: Jurko Gospodnetiæ (jurko.gospodnetic_at_[hidden])
Date: 2008-01-31 21:30:19
Hi.
I ran into the following code in bjam's timestamp() function:
...
b->name = target;
b->time = b->flags = 0;
b->progress = BIND_INIT;
if( hashenter( bindhash, (HASHDATA **)&b ) )
b->name = newstr( target ); /* never freed */
if( b->progress != BIND_INIT )
goto afterscanning;
...
and I am not quite sure that second if ever has a chance of happening.
The b->progress value is set before calling hashenter(), then
hashenter() is called that has no way of changing it (only interested in
the first pointer inside the b structure to be used as a key for
hashing, not the rest) and then possibly newstr() is called. None of
these calls seem to have any chance of affecting this b->progress flag.
Could this if be removed or am I misunderstanding something?
Best regards,
Jurko Gospodnetiæ