comparison src/sysdep.c @ 613:023b83f4e54b

[xemacs-hg @ 2001-06-10 10:42:16 by ben] ------ signal-code changes ------ data.c, device-tty.c, emacs.c, floatfns.c, linuxplay.c, nas.c, process-unix.c, signal.c, sunplay.c, sysdep.c, syssignal.h: use EMACS_SIGNAL everywhere instead of playing preprocessing games with signal(). s\windowsnt.h, s\mingw32.h, syssignal.h: Remove mswindows signal code from s+m headers and move to syssignal.h as one of the five ways of signal handling, instead of playing preprocessing games. fileio.c, sysdep.c: Rename sys_do_signal to qxe_reliable_signal. signal.c, process-unix.c, profile.c: Create set_timeout_signal(); use instead of just EMACS_SIGNAL to establish a signal handler on a timeout signal; this does special things under Cygwin. nt.c: Eliminate term_ntproc(), which is blank; used as a SIGABRT handler, which was wrong anyway. nt.c, win32.c: Move signal code from nt.c to win32.c, since Cygwin needs it too when dealing with timeout signals. s\cygwin32.h: Define CYGWIN_BROKEN_SIGNALS. ------ other changes ------ s\mingw32.h: Fix problems with NOT_C_CODE being in the wrong place and excluding defines needed when building Makefile.in.in. filelock.c, mule-canna.c, mule-ccl.c, mule-ccl.h, ralloc.c, unexalpha.c, unexapollo.c, unexcw.c, unexelfsgi.c, unexnt.c, unexsni.c, s\aix3-1.h, s\bsd4-1.h, s\bsd4-2.h, s\bsd4-3.h, s\cxux.h, s\cygwin32.h, s\dgux.h, s\dgux5-4r2.h, s\dgux5-4r3.h, s\dgux5-4r4.h, s\ewsux5r4.h, s\gnu.h, s\hpux.h, s\iris3-5.h, s\iris3-6.h, s\irix3-3.h, s\linux.h, s\mingw32.h, s\newsos5.h, s\nextstep.h, s\ptx.h, s\riscix1-1.h, s\riscix1-2.h, s\rtu.h, s\sco4.h, s\sco5.h, s\template.h, s\ultrix.h, s\umax.h, s\umips.h, s\unipl5-0.h, s\unipl5-2.h, s\usg5-0.h, s\usg5-2-2.h, s\usg5-2.h, s\usg5-3.h, s\usg5-4.h, s\windowsnt.h, s\xenix.h: Rename 'GNU Emacs' to XEmacs in the copyright and comments. nas.c: Stylistic cleanup. Avoid preprocessing games with names such as play_sound_file. ------ signal-code changes ------ data.c, device-tty.c, emacs.c, floatfns.c, linuxplay.c, nas.c, process-unix.c, signal.c, sunplay.c, sysdep.c, syssignal.h: use EMACS_SIGNAL everywhere instead of playing preprocessing games with signal(). s\windowsnt.h, s\mingw32.h, syssignal.h: Remove mswindows signal code from s+m headers and move to syssignal.h as one of the five ways of signal handling, instead of playing preprocessing games. fileio.c, sysdep.c: Rename sys_do_signal to qxe_reliable_signal. signal.c, process-unix.c, profile.c: Create set_timeout_signal(); use instead of just EMACS_SIGNAL to establish a signal handler on a timeout signal; this does special things under Cygwin. nt.c: Eliminate term_ntproc(), which is blank; used as a SIGABRT handler, which was wrong anyway. nt.c, win32.c: Move signal code from nt.c to win32.c, since Cygwin needs it too when dealing with timeout signals. s\cygwin32.h: Define CYGWIN_BROKEN_SIGNALS. ------ other changes ------ s\mingw32.h: Fix problems with NOT_C_CODE being in the wrong place and excluding defines needed when building Makefile.in.in. filelock.c, mule-canna.c, mule-ccl.c, mule-ccl.h, ralloc.c, unexalpha.c, unexapollo.c, unexcw.c, unexelfsgi.c, unexnt.c, unexsni.c, s\aix3-1.h, s\bsd4-1.h, s\bsd4-2.h, s\bsd4-3.h, s\cxux.h, s\cygwin32.h, s\dgux.h, s\dgux5-4r2.h, s\dgux5-4r3.h, s\dgux5-4r4.h, s\ewsux5r4.h, s\gnu.h, s\hpux.h, s\iris3-5.h, s\iris3-6.h, s\irix3-3.h, s\linux.h, s\mingw32.h, s\newsos5.h, s\nextstep.h, s\ptx.h, s\riscix1-1.h, s\riscix1-2.h, s\rtu.h, s\sco4.h, s\sco5.h, s\template.h, s\ultrix.h, s\umax.h, s\umips.h, s\unipl5-0.h, s\unipl5-2.h, s\usg5-0.h, s\usg5-2-2.h, s\usg5-2.h, s\usg5-3.h, s\usg5-4.h, s\windowsnt.h, s\xenix.h: Rename 'GNU Emacs' to XEmacs in the copyright and comments. nas.c: Stylistic cleanup. Avoid preprocessing games with names such as play_sound_file. xemacs-faq.texi: Update sections on Windows and MacOS availability. alist.el, apropos.el, autoload.el, bytecomp.el, cl-compat.el, cl-extra.el, cl-macs.el, cl-seq.el, cl.el, cmdloop.el, cus-edit.el, derived.el, gpm.el, itimer.el, lisp-mode.el, shadow.el, version.el, wid-browse.el: Rename 'GNU Emacs' to XEmacs in the copyright. Fix other references to GNU Emacs that should be XEmacs or just Emacs. files.el: Fix warning. simple.el: transpose-line-up/down will now move the region up or down by a line if active. cvtmail.c, fakemail.c, gnuserv.c, gnuserv.h, gnuslib.c, make-msgfile.c, make-path.c, pop.c, pop.h, profile.c, tcp.c: Rename 'GNU Emacs' to XEmacs in the copyright. Fix comments in similar ways. digest-doc.c, sorted-doc.c: Fix program and author name to reflect XEmacs.
author ben
date Sun, 10 Jun 2001 10:42:39 +0000
parents 4f6ba8f1fb3d
children b39c14581166
comparison
equal deleted inserted replaced
612:ff0d9e7facba 613:023b83f4e54b
603 save_signal_handlers (struct save_signal *saved_handlers) 603 save_signal_handlers (struct save_signal *saved_handlers)
604 { 604 {
605 while (saved_handlers->code) 605 while (saved_handlers->code)
606 { 606 {
607 saved_handlers->handler 607 saved_handlers->handler
608 = (SIGTYPE (*) (SIG_PARAM_TYPE)) signal (saved_handlers->code, SIG_IGN); 608 = (SIGTYPE (*) (SIG_PARAM_TYPE)) EMACS_SIGNAL (saved_handlers->code, SIG_IGN);
609 saved_handlers++; 609 saved_handlers++;
610 } 610 }
611 } 611 }
612 612
613 static void 613 static void
614 restore_signal_handlers (struct save_signal *saved_handlers) 614 restore_signal_handlers (struct save_signal *saved_handlers)
615 { 615 {
616 while (saved_handlers->code) 616 while (saved_handlers->code)
617 { 617 {
618 signal (saved_handlers->code, saved_handlers->handler); 618 EMACS_SIGNAL (saved_handlers->code, saved_handlers->handler);
619 saved_handlers++; 619 saved_handlers++;
620 } 620 }
621 } 621 }
622 622
623 #ifdef WIN32_NATIVE 623 #ifdef WIN32_NATIVE
898 /* On AIX, the parent gets SIGHUP when a pty attached child dies. So, we */ 898 /* On AIX, the parent gets SIGHUP when a pty attached child dies. So, we */
899 /* ignore SIGHUP once we've started a child on a pty. Note that this may */ 899 /* ignore SIGHUP once we've started a child on a pty. Note that this may */
900 /* cause EMACS not to die when it should, i.e., when its own controlling */ 900 /* cause EMACS not to die when it should, i.e., when its own controlling */
901 /* tty goes away. I've complained to the AIX developers, and they may */ 901 /* tty goes away. I've complained to the AIX developers, and they may */
902 /* change this behavior, but I'm not going to hold my breath. */ 902 /* change this behavior, but I'm not going to hold my breath. */
903 signal (SIGHUP, SIG_IGN); 903 EMACS_SIGNAL (SIGHUP, SIG_IGN);
904 #endif /* IBMRTAIX */ 904 #endif /* IBMRTAIX */
905 905
906 #ifdef TIOCPKT 906 #ifdef TIOCPKT
907 /* In some systems (Linux through 2.0.0, at least), packet mode doesn't 907 /* In some systems (Linux through 2.0.0, at least), packet mode doesn't
908 get cleared when a pty is closed, so we need to clear it here. 908 get cleared when a pty is closed, so we need to clear it here.
2429 2429
2430 /* #### Is there any reason this is static global rather than local? */ 2430 /* #### Is there any reason this is static global rather than local? */
2431 static struct sigaction new_action, old_action; 2431 static struct sigaction new_action, old_action;
2432 2432
2433 signal_handler_t 2433 signal_handler_t
2434 sys_do_signal (int signal_number, signal_handler_t action) 2434 qxe_reliable_signal (int signal_number, signal_handler_t action)
2435 { 2435 {
2436 #if 0 2436 #if 0
2437 2437
2438 /* XEmacs works better if system calls are *not* restarted. 2438 /* XEmacs works better if system calls are *not* restarted.
2439 This allows C-g to interrupt reads and writes, on most systems. 2439 This allows C-g to interrupt reads and writes, on most systems.
2480 #elif defined (HAVE_SIGBLOCK) 2480 #elif defined (HAVE_SIGBLOCK)
2481 2481
2482 /* We use sigvec() rather than signal() if we have it, because 2482 /* We use sigvec() rather than signal() if we have it, because
2483 it lets us specify interruptible system calls. */ 2483 it lets us specify interruptible system calls. */
2484 signal_handler_t 2484 signal_handler_t
2485 sys_do_signal (int signal_number, signal_handler_t action) 2485 qxe_reliable_signal (int signal_number, signal_handler_t action)
2486 { 2486 {
2487 struct sigvec vec, ovec; 2487 struct sigvec vec, ovec;
2488 2488
2489 vec.sv_handler = action; 2489 vec.sv_handler = action;
2490 vec.sv_mask = 0; 2490 vec.sv_mask = 0;