aboutsummaryrefslogtreecommitdiff
path: root/gdb/breakpoint.c
diff options
context:
space:
mode:
authorVladimir Prus <vladimir@codesourcery.com>2008-06-10 09:29:15 +0000
committerVladimir Prus <vladimir@codesourcery.com>2008-06-10 09:29:15 +0000
commit0b080f5982d636d473d4fb9e62ef1ee00b28fdbc (patch)
tree1bcc2168a81286fcb2ed029576c282e77c3c8736 /gdb/breakpoint.c
parent3201a343ca2a328894f3d0384082eed9b757cf03 (diff)
downloadfsf-binutils-gdb-0b080f5982d636d473d4fb9e62ef1ee00b28fdbc.zip
fsf-binutils-gdb-0b080f5982d636d473d4fb9e62ef1ee00b28fdbc.tar.gz
fsf-binutils-gdb-0b080f5982d636d473d4fb9e62ef1ee00b28fdbc.tar.bz2
Introduce common cleanup for restoring integers.
* defs.h (make_cleanup_restore_integer): New declaration. (struct cleanup): New field free_arg. (make_my_cleanup_2): New. * utils.c (restore_integer_closure, restore_integer) (make_cleanup_restore_integer): New. (make_my_cleanup): Initialize the free_arg field and renamed to make_my_cleanup_2. (do_my_cleanups): Call free_arg. (discard_cleanups): Call free_arg. * breakpoint.c (restore_always_inserted_mode): Remove. (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r--gdb/breakpoint.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 051b753..dd7bf12 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -1435,12 +1435,6 @@ reattach_breakpoints (int pid)
return 0;
}
-static void
-restore_always_inserted_mode (void *p)
-{
- always_inserted_mode = (uintptr_t) p;
-}
-
void
update_breakpoints_after_exec (void)
{
@@ -1456,8 +1450,7 @@ update_breakpoints_after_exec (void)
/* The binary we used to debug is now gone, and we're updating
breakpoints for the new binary. Until we're done, we should not
try to insert breakpoints. */
- cleanup = make_cleanup (restore_always_inserted_mode,
- (void *) (uintptr_t) always_inserted_mode);
+ cleanup = make_cleanup_restore_integer (&always_inserted_mode);
always_inserted_mode = 0;
ALL_BREAKPOINTS_SAFE (b, temp)