I pushed this simplification.
* bootstrap.conf (gnulib_modules): Remove sigprocmask.
* src/sdiff.c (temporary_file): No need to invoke sigprocmask
here, since the signal handler merely sets a flag.
---
bootstrap.conf | 1 -
src/sdiff.c | 9 ---------
2 files changed, 0 insertions(+), 10 deletions(-)
diff --git a/bootstrap.conf b/bootstrap.conf
index 9b67b74..55f0837 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -60,7 +60,6 @@ readme-release
regex
sh-quote
signal
-sigprocmask
stat
stat-macros
stat-time
diff --git a/src/sdiff.c b/src/sdiff.c
index e1bb117..ceda3db 100644
--- a/src/sdiff.c
+++ b/src/sdiff.c
@@ -1178,18 +1178,9 @@ temporary_file (void)
char const *dir = tmpdir ? tmpdir : P_tmpdir;
char *buf = xmalloc (strlen (dir) + 1 + 5 + 6 + 1);
int fd;
- int e;
- sigset_t procmask;
- sigset_t blocked;
sprintf (buf, "%s/sdiffXXXXXX", dir);
- sigemptyset (&blocked);
- sigaddset (&blocked, SIGINT);
- sigprocmask (SIG_BLOCK, &blocked, &procmask);
fd = mkstemp (buf);
- e = errno;
if (0 <= fd)
tmpname = buf;
- sigprocmask (SIG_SETMASK, &procmask, 0);
- errno = e;
return fd;
}
--
1.7.6.5