Mail Archives: djgpp/2000/04/20/13:32:42
> > One thing that would be interesting to know is where exactly during
> > the exit code does it crash. You could test this with a simple
> > program used instead of Bash in the same scenario where Bash causes a
> > crash (I'm assuming that Bash is not special here). That test program
> > could be instrumented to print messages telling where it is in the
> > exit code (for that, you might need to pull a few library modules,
> > such as crt1.c and dpmiexcp.c, modify them, and paste them into your
> > program).
> > Thanks again for working on this.
>
> No problem. I'll look into the exit code after Easter holidays.
It looks like you will need to insert debugging printf's into the
functions `_exit' and `__djgpp_exception_toggle', both defined near
the end of the file src/libc/go32/dpmiexcp.c in the library sources.
The first thing I'd suggest to look at is whether this problem is at
all related to the fact that DJGPP programs hook the keyboard
interrupt (to generate SIGINT and SIGQUIT), and unhook it at exit. In
particular, what happens if we don't hook the keyboard? Does it crash
before or after the keyboard is unhooked in the exit code? Does it
help if the function `__djgpp_exception_toggle' runs with interrupts
disabled?
If you have any questions about the operation of the exit code, or any
related issues, please post them here.
Thanks!
- Raw text -