On Saturday, February 18, 2006 at 20:31, Eli Zaretskii wrote:

> The patches below fix this problem.

It appears to me that this patch will cause a double "free" in 
"start_job"command" (job.c).  If the slow path is taken, "new_argv" is 
freed just after label "slow".  With the patch, the code that would 
reallocate "new_argv" after the batch file is created is skipped when 
"just_print_flag" is true, so "construct_command_argv_internal" returns a 
bogus value.  That percolates back to "argv" in "start_job_command".  
However, if "just_print_flag" is set, then freeing "argv[0]" and "argv" is 
attempted again around line 1125.

One solution might be to set "new_argv" to null in "if" statement added by 
the patch, and then condition the free in the "-n" case in 
"start_job_command" on a non-null value.

                                      -- Dave



_______________________________________________
Make-w32 mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/make-w32

Reply via email to