Index: gdb/amd64fbsd-nat.c |
diff --git a/gdb/amd64fbsd-nat.c b/gdb/amd64fbsd-nat.c |
index ab2431cf7fad643a0c9eed8ba5db2079642587ce..eb30831539c37f549a08fdbb2c7ef4e98cd4344d 100644 |
--- a/gdb/amd64fbsd-nat.c |
+++ b/gdb/amd64fbsd-nat.c |
@@ -1,6 +1,6 @@ |
/* Native-dependent code for FreeBSD/amd64. |
- Copyright (C) 2003-2004, 2007-2012 Free Software Foundation, Inc. |
+ Copyright (C) 2003-2013 Free Software Foundation, Inc. |
This file is part of GDB. |
@@ -142,6 +142,17 @@ amd64fbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb) |
} |
+static void (*super_mourn_inferior) (struct target_ops *ops); |
+ |
+static void |
+amd64fbsd_mourn_inferior (struct target_ops *ops) |
+{ |
+#ifdef HAVE_PT_GETDBREGS |
+ i386_cleanup_dregs (); |
+#endif |
+ super_mourn_inferior (ops); |
+} |
+ |
/* Provide a prototype to silence -Wmissing-prototypes. */ |
void _initialize_amd64fbsd_nat (void); |
@@ -170,6 +181,9 @@ _initialize_amd64fbsd_nat (void) |
#endif /* HAVE_PT_GETDBREGS */ |
+ super_mourn_inferior = t->to_mourn_inferior; |
+ t->to_mourn_inferior = amd64fbsd_mourn_inferior; |
+ |
t->to_pid_to_exec_file = fbsd_pid_to_exec_file; |
t->to_find_memory_regions = fbsd_find_memory_regions; |
t->to_make_corefile_notes = fbsd_make_corefile_notes; |