summaryrefslogtreecommitdiff
path: root/hurd/hurdinit.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1999-04-30 13:52:59 +0000
committerRoland McGrath <roland@gnu.org>1999-04-30 13:52:59 +0000
commitdeb8346419a8e5648df00d5384258eae19961f51 (patch)
tree1df306323b20012fee46b596f266112256a3777e /hurd/hurdinit.c
parent71c356ecbebefd4cfcb91c9009ec506ab106b300 (diff)
1999-04-30 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdinit.c (_hurd_new_proc_init): Don't do initial SIGTRAP if EXEC_SIGTRAP was set in the incoming exec flags--that indicates the exec server simulated a SIGTRAP before we even started up, so gdb is already happy.
Diffstat (limited to 'hurd/hurdinit.c')
-rw-r--r--hurd/hurdinit.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/hurd/hurdinit.c b/hurd/hurdinit.c
index 50b6729fd3..7e2fe01c83 100644
--- a/hurd/hurdinit.c
+++ b/hurd/hurdinit.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992, 93, 94, 95, 96, 97, 98 Free Software Foundation, Inc.
+/* Copyright (C) 1992,93,94,95,96,97,98,99 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -154,7 +154,16 @@ _hurd_new_proc_init (char **argv,
here, like _hurd_pid, are already initialized. */
RUN_HOOK (_hurd_proc_subinit, ());
- if (_hurdsig_traced)
+ /* XXX This code should probably be removed entirely at some point. This
+ conditional should make it reasonably usable with old gdb's for a
+ while. Eventually it probably makes most sense for the exec server to
+ mask out EXEC_SIGTRAP so the debugged program is closer to not being
+ able to tell it's being debugged. */
+ if (_hurdsig_traced
+#ifdef EXEC_SIGTRAP
+ && !(_hurd_exec_flags & EXEC_SIGTRAP)
+#endif
+ )
/* This process is "traced", meaning it should stop on signals or exec.
We are all set up now to handle signals. Stop ourselves, to inform
our parent (presumably a debugger) that the exec has completed. */