Skip to content

Commit a2d4e94

Browse files
authored
Fix null pointer reference in sigaction. (#795)
1 parent bdacf98 commit a2d4e94

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

contrib/win32/win32compat/signal.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -341,8 +341,12 @@ sigaction(int signum, const struct sigaction * act, struct sigaction * oldact)
341341
return r;
342342
}
343343

344-
if (act)
345-
oldact->sa_handler = w32_signal(signum, act->sa_handler);
344+
if (act) {
345+
sighandler_t old_handler = w32_signal(signum, act->sa_handler);
346+
if (oldact) {
347+
oldact->sa_handler = old_handler;
348+
}
349+
}
346350
else if (oldact)
347351
oldact->sa_handler = sig_handlers[signum];
348352

0 commit comments

Comments
 (0)