Mail Archives: djgpp/2006/08/20/11:54:36
Esa A E Peuha kirjoitti:
> Martin Str|mberg <ams AT speedy DOT ludd DOT ltu DOT se> writes:
>
>> Doing that, it reveals to me that it seems to be some kind of
>> corruption that happens somewhere in excute_cmd.c:
>> execute_simple_command() or in what is called from there. A watchpoint
>> tells me that it's changed in nofork.c: nofork_save_all_environment()
>> and nofork_restore_all_environment(). But that does not seem to be the
>> place of corruption.
>
> It _is_ the place of corruption. The function command_substitute() does
> setjmp(return_catch) before it executes the command, but it doesn't
> restore the old value of return_catch afterwards, so any longjmp to
> return_catch goes back inside command_substitute() even after it has
> returned. This is no problem on other platforms, becuse the function
> will just exit, but on DJGPP it calls nofork_restore_all_environment()
> again, which pretty much destroys the environment.
>
Have somebody tried to get bash-3.0 (or better 3.1 working for DJGPP).
Long time ago I tried with bash-3.0, but results was not satisfactory
and I didn't have enough time for debugging.
Andris
- Raw text -