>>>> SL Baur writes:
sb> Andreas Jaeger <aj(a)arthur.rhein-neckar.de> writes in xemacs-beta(a)xemacs.org:
sb> ...
> I did send the patch for discussion and further testing and
thought
> the information in it might become relevant. Looking at Wolfram's
> analysis of the situation, XEmacs should segfault the same way as
> FSF-Emacs does --- but AFAIK it doesn't.
sb> It did, but I worked around it, I believe. Check out voodoo_free_hook
sb> in emacs.c ... Also, look through your old glibc email archives. I
sb> emailed you about this in March of 1998.
I begin to remember ... That looks exactly like the same problem.
sb> 1998-03-29 SL Baur <steve(a)altair.xemacs.org>
sb> * emacs.c (voodoo_free_hook): ELF libraries built with newer
sb> versions of GCC do horrible things in dumped binaries after exit()
sb> is called.
sb> (Fkill_emacs): Use it.
> Either the analysis is wrong, we're just lucky with XEmacs or
XEmacs
> is just better;-).
sb> The patch looks O.K. and Wolfram's analysis is correct. I no longer
sb> have access to the machine where XEmacs crashed 100% of the time at
sb> exit due to a double free, but hopefully I can duplicate it on a
sb> different machine and verify that this fixes the problem without
sb> voodoo_free_hook and turning off free at exit(3) time.
Andreas Schwab commented on Wolfram's email with:
Unfortunately this has a very nasty side effect: the protection
against
MALLOC_CHECK_ does not work any more. That means that Emacs will crash if
MALLOC_CHECK_ is defined in the environment, and there is no way to fix
that within Emacs (the malloc_initialize_hook runs too late).
And Wolfram replied:
OK, I'll take a look at whether this can be fixed in malloc.
Therefore your hack might be the better idea. If you still can
reproduce it, you've got to decide yourself which hack works really
better.
Sorry, I don't have time to help investigating this - I should spend
more time on my thesis :-(. But I'll try to keep you informed.
Andreas
--
Andreas Jaeger aj(a)arthur.rhein-neckar.de jaeger(a)informatik.uni-kl.de
for pgp-key finger ajaeger(a)aixd1.rhrk.uni-kl.de