1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-01 11:14:55 +00:00

Fix 'debug-timer-check' on MS-Windows

* src/w32proc.c (w32_raise): New function.
* src/atimer.c (raise) [WINDOWSNT]: Redirect to 'w32_raise'.
This commit is contained in:
Eli Zaretskii 2022-05-30 20:51:19 +03:00
parent 4132223d89
commit c9e5e79ac2
2 changed files with 21 additions and 0 deletions

View File

@ -18,6 +18,10 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#include <config.h>
#ifdef WINDOWSNT
#define raise(s) w32_raise(s)
#endif
#include "lisp.h"
#include "keyboard.h"
#include "syssignal.h"

View File

@ -63,6 +63,8 @@ along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. */
#include "w32term.h"
#include "coding.h"
void w32_raise (int);
#define RVA_TO_PTR(var,section,filedata) \
((void *)((section)->PointerToRawData \
+ ((DWORD_PTR)(var) - (section)->VirtualAddress) \
@ -311,6 +313,21 @@ sigismember (const sigset_t *set, int signo)
return (*set & (1U << signo)) != 0;
}
/* A fuller emulation of 'raise', which supports signals that MS
runtime doesn't know about. */
void
w32_raise (int signo)
{
if (!(signo == SIGCHLD || signo == SIGALRM || signo == SIGPROF))
raise (signo);
/* Call the handler directly for the signals that we handle
ourselves. */
signal_handler handler = sig_handlers[signo];
if (!(handler == SIG_DFL || handler == SIG_IGN || handler == SIG_ERR))
handler (signo);
}
pid_t
getpgrp (void)
{