summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@debian.org>2003-01-04 23:07:24 +0000
committerDaniel Jacobowitz <dan@debian.org>2003-01-04 23:07:24 +0000
commite48d53e24d65c826405158b0ec495107efe36e66 (patch)
tree87e976b09010cd5eebbdbeb4c0cfb03d2e5f90c1
parent71174744ae2af60a74247908c0d27da2554ab0b2 (diff)
downloadgdb-e48d53e24d65c826405158b0ec495107efe36e66.tar.gz
* breakpoint.c (insert_breakpoints): Skip disabled breakpoints
entirely. (breakpoint_re_set_one): Don't fetch the value for a disabled watchpoint.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/breakpoint.c18
2 files changed, 13 insertions, 12 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 62e95d6db6f..99a98a12470 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,12 @@
2003-01-04 Daniel Jacobowitz <drow@mvista.com>
+ * breakpoint.c (insert_breakpoints): Skip disabled breakpoints
+ entirely.
+ (breakpoint_re_set_one): Don't fetch the value for a disabled
+ watchpoint.
+
+2003-01-04 Daniel Jacobowitz <drow@mvista.com>
+
* buildsym.h (processing_hp_compilation): Remove obsolete variable.
* gdbarch.sh Remove include of "value.h" in gdbarch.h.
(COERCE_FLOAT_TO_DOUBLE): Remove.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 88eb63430ed..10c2bc68f86 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -1,7 +1,7 @@
/* Everything about breakpoints, for GDB.
Copyright 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
- 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software
+ 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software
Foundation, Inc.
This file is part of GDB.
@@ -735,9 +735,11 @@ insert_breakpoints (void)
ALL_BREAKPOINTS_SAFE (b, temp)
{
- if (b->enable_state == bp_permanent)
- /* Permanent breakpoints cannot be inserted or removed. */
+ /* Permanent breakpoints cannot be inserted or removed. Disabled
+ breakpoints should not be inserted. */
+ if (b->enable_state != bp_enabled)
continue;
+
if ((b->type == bp_watchpoint
|| b->type == bp_hardware_watchpoint
|| b->type == bp_read_watchpoint
@@ -759,9 +761,6 @@ insert_breakpoints (void)
&& b->type != bp_catch_exec
&& b->type != bp_catch_throw
&& b->type != bp_catch_catch
- && b->enable_state != bp_disabled
- && b->enable_state != bp_shlib_disabled
- && b->enable_state != bp_call_disabled
&& !b->inserted
&& !b->duplicate)
{
@@ -880,9 +879,6 @@ insert_breakpoints (void)
return_val = val; /* remember failure */
}
else if (ep_is_exception_catchpoint (b)
- && b->enable_state != bp_disabled
- && b->enable_state != bp_shlib_disabled
- && b->enable_state != bp_call_disabled
&& !b->inserted
&& !b->duplicate)
@@ -940,7 +936,6 @@ insert_breakpoints (void)
else if ((b->type == bp_hardware_watchpoint ||
b->type == bp_read_watchpoint ||
b->type == bp_access_watchpoint)
- && b->enable_state == bp_enabled
&& b->disposition != disp_del_at_next_stop
&& !b->inserted
&& !b->duplicate)
@@ -1059,7 +1054,6 @@ insert_breakpoints (void)
else if ((b->type == bp_catch_fork
|| b->type == bp_catch_vfork
|| b->type == bp_catch_exec)
- && b->enable_state == bp_enabled
&& !b->inserted
&& !b->duplicate)
{
@@ -7049,7 +7043,7 @@ breakpoint_re_set_one (PTR bint)
value_free (b->val);
b->val = evaluate_expression (b->exp);
release_value (b->val);
- if (VALUE_LAZY (b->val))
+ if (VALUE_LAZY (b->val) && b->enable_state == bp_enabled)
value_fetch_lazy (b->val);
if (b->cond_string != NULL)