aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog12
-rw-r--r--gdb/compile/compile.c29
2 files changed, 13 insertions, 28 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 63d7cf5..a56531e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,17 @@
2021-06-17 Pedro Alves <pedro@palves.net>
+ * gdbsupport/scoped_ignore_signal.h: New.
+ * compile/compile.c: Include gdbsupport/scoped_ignore_signal.h
+ instead of <signal.h>. Don't include <unistd.h>.
+ (scoped_ignore_sigpipe): Remove.
+ * gdbsupport/scoped_ignore_sigttou.h: Include gdbsupport/scoped_ignore_signal.h
+ instead of <signal.h>. Don't include <unistd.h>.
+ (lazy_init): New.
+ (scoped_ignore_sigttou): Reimplement using scoped_ignore_signal
+ and lazy_init.
+
+2021-06-17 Pedro Alves <pedro@palves.net>
+
* Makefile.in (HFILES_NO_SRCDIR): Remove inflow.h.
* inf-ptrace.c, inflow.c, procfs.c: Don't include "inflow.h".
* inflow.h: Delete, moved to gdbsupport/ under a different name.
diff --git a/gdb/compile/compile.c b/gdb/compile/compile.c
index abbb72a..e815348 100644
--- a/gdb/compile/compile.c
+++ b/gdb/compile/compile.c
@@ -43,7 +43,7 @@
#include "gdbsupport/gdb_optional.h"
#include "gdbsupport/gdb_unlinker.h"
#include "gdbsupport/pathstuff.h"
-#include <signal.h>
+#include "gdbsupport/scoped_ignore_signal.h"
@@ -634,33 +634,6 @@ print_callback (void *ignore, const char *message)
fputs_filtered (message, gdb_stderr);
}
-/* RAII class used to ignore SIGPIPE in a scope. */
-
-class scoped_ignore_sigpipe
-{
-public:
- scoped_ignore_sigpipe ()
- {
-#ifdef SIGPIPE
- m_osigpipe = signal (SIGPIPE, SIG_IGN);
-#endif
- }
-
- ~scoped_ignore_sigpipe ()
- {
-#ifdef SIGPIPE
- signal (SIGPIPE, m_osigpipe);
-#endif
- }
-
- DISABLE_COPY_AND_ASSIGN (scoped_ignore_sigpipe);
-
-private:
-#ifdef SIGPIPE
- sighandler_t m_osigpipe = NULL;
-#endif
-};
-
/* Process the compilation request. On success it returns the object
and source file names. On an error condition, error () is
called. */