Changeset 11595


Ignore:
Timestamp:
Jan 7, 2009, 9:38:29 AM (11 years ago)
Author:
gb
Message:

Don't define or reference 'bogus_signal_handler()' on Darwin, which
was only defined to catch some long-forgotten bug.

With no signal handler in place for synchronous, thread-targeted
signals (traps/faults) on Darwin, Apple's crash reporting mechanism
can be invoked if catch_exception_raise() returns something non-zero.
(Apple's crash reporting mechanism is very likely to be even more
useless for lisp debugging, but it may be easier to let people discover
that for themselves than to keep explaining why the crash reporting
mechanism isn't invoked.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/lisp-kernel/x86-exceptions.c

    r11566 r11595  
    14751475#endif
    14761476
    1477 #ifdef DARWIN
    1478 void
    1479 bogus_signal_handler(int signum, siginfo_t *info, ExceptionInformation *xp)
    1480 {
    1481   if (signum == SIGSYS) {
    1482     return;                     /* Leopard lossage */
    1483   }
    1484 }
    1485 #endif
    14861477
    14871478#ifndef WINDOWS
     
    19621953  install_signal_handler(SIGSEGV,handler);
    19631954  install_signal_handler(SIGFPE, handler);
    1964 #else
    1965   install_signal_handler(SIGTRAP,bogus_signal_handler);
    1966   install_signal_handler(SIGILL, bogus_signal_handler);
    1967  
    1968   install_signal_handler(SIGBUS, bogus_signal_handler);
    1969   install_signal_handler(SIGSEGV,bogus_signal_handler);
    1970   install_signal_handler(SIGFPE, bogus_signal_handler);
    1971   /*  9.0.0d8 generates spurious SIGSYS from mach_msg_trap */
    1972   install_signal_handler(SIGSYS, bogus_signal_handler);
    19731955#endif
    19741956 
Note: See TracChangeset for help on using the changeset viewer.