summaryrefslogtreecommitdiff
path: root/src/w32.h
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2012-09-25 13:50:01 +0200
committerEli Zaretskii <eliz@gnu.org>2012-09-25 13:50:01 +0200
commit16b22fef423afedf034460a0f811abf50d0c5f3e (patch)
tree42d6127bd2c77a3e8cb34c90276d3c23ca3224d4 /src/w32.h
parent9c52dd5a2ef4457d3a4bc33720ca5eb766d939a5 (diff)
downloademacs-16b22fef423afedf034460a0f811abf50d0c5f3e.tar.gz
Fix handling of fatal signals and exceptions on MS-Windows.
src/w32proc.c (sys_signal): Handle all signals defined by the MS-Windows runtime, not just SIGCHLD. Actually install the signal handlers for signals supported by Windows. Don't override term_ntproc as the handler for SIGABRT. (sigaction): Rewrite to call sys_signal instead of duplicating its code. (sys_kill): Improve commentary. src/w32.c (term_ntproc): Accept (and ignore) one argument, for consistency with a signature of a signal handler. All callers changed. (init_ntproc): Accept an argument DUMPING. If dumping, don't install term_ntproc as a signal handler for SIGABRT, as that should be done by the dumped Emacs. src/w32.h (init_ntproc, term_ntproc): Adjust prototypes. src/w32select.c (term_w32select): Protect against repeated invocation by setting clipboard_owner to NULL after calling DestroyWindow. src/emacs.c (shut_down_emacs, main): Adapt the calls to init_ntproc and term_ntproc to their modified signatures.
Diffstat (limited to 'src/w32.h')
-rw-r--r--src/w32.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/w32.h b/src/w32.h
index 39409e38082..18625cea955 100644
--- a/src/w32.h
+++ b/src/w32.h
@@ -127,8 +127,8 @@ extern void reset_standard_handles (int in, int out,
/* Return the string resource associated with KEY of type TYPE. */
extern LPBYTE w32_get_resource (char * key, LPDWORD type);
-extern void init_ntproc (void);
-extern void term_ntproc (void);
+extern void init_ntproc (int);
+extern void term_ntproc (int);
extern void globals_of_w32 (void);
extern void syms_of_w32term (void);
extern void syms_of_w32fns (void);