projects
/
platform
/
upstream
/
guile.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
91ba73b
)
Save and restore errno in the signal handler.
author
Mark H Weaver
<mhw@netris.org>
Sat, 25 May 2019 09:20:42 +0000
(
05:20
-0400)
committer
Mark H Weaver
<mhw@netris.org>
Tue, 18 Jun 2019 06:05:20 +0000
(
02:05
-0400)
* libguile/scmsigs.c (take_signal): Save and restore errno.
libguile/scmsigs.c
patch
|
blob
|
history
diff --git
a/libguile/scmsigs.c
b/libguile/scmsigs.c
index 755e657eae508aabf18dc7db0544ff6adc493749..a870f56875c07e22e399f9ee5635daa1cb34f01d 100644
(file)
--- a/
libguile/scmsigs.c
+++ b/
libguile/scmsigs.c
@@
-129,12
+129,14
@@
static int signal_pipe[2];
static SIGRETTYPE
take_signal (int signum)
{
+ int old_errno = errno;
char sigbyte = signum;
full_write (signal_pipe[1], &sigbyte, 1);
#ifndef HAVE_SIGACTION
signal (signum, take_signal);
#endif
+ errno = old_errno;
}
struct signal_pipe_data