fix [2170898] abort() doesn't print a stack tarce

the issue here is that abort() can be called from anywhere, in particular
from malloc or free. When we try to use the debug_log functions, these
can end up calling into some code (like malloc/free) that called abort()
in the first place and end up in an infinite recursion loop.
This commit is contained in:
Mathias Agopian 2009-10-06 15:35:22 -07:00
parent fdc5c1f56f
commit e36502673d

View file

@ -73,10 +73,8 @@ abort(void)
}
/* temporary, for bug hunting */
debug_log("abort() called in pid %d\n", getpid());
/* seg fault seems to produce better debuggerd results than SIGABRT */
*((char*)0xdeadbaad) = 39;
debug_log("somehow we're not dead?\n");
/* -- */
(void)kill(getpid(), SIGABRT);