2010-11-29 Phil Muldoon <pmuldoon@redhat.com>
PR python/12199 * python/py-breakpoint.c (bppy_delete_breakpoint): New function. 2010-11-29 Phil Muldoon <pmuldoon@redhat.com> PR python/12199 * gdb.python/py-breakpoint.exp: Test the delete method. 2010-11-29 Phil Muldoon <pmuldoon@redhat.com> PR python/12199 * gdb.texinfo (Breakpoints In Python): Document "delete" method.
This commit is contained in:
parent
950386c651
commit
94b6973efe
6 changed files with 66 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2010-11-29 Phil Muldoon <pmuldoon@redhat.com>
|
||||||
|
|
||||||
|
PR python/12199
|
||||||
|
|
||||||
|
* python/py-breakpoint.c (bppy_delete_breakpoint): New function.
|
||||||
|
|
||||||
2010-11-28 Jan Kratochvil <jan.kratochvil@redhat.com>
|
2010-11-28 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
Fix step_resume_breakpoint unsaved during an infcall.
|
Fix step_resume_breakpoint unsaved during an infcall.
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2010-11-29 Phil Muldoon <pmuldoon@redhat.com>
|
||||||
|
|
||||||
|
PR python/12199
|
||||||
|
|
||||||
|
* gdb.texinfo (Breakpoints In Python): Document "delete" method.
|
||||||
|
|
||||||
2010-11-23 Tom Tromey <tromey@redhat.com>
|
2010-11-23 Tom Tromey <tromey@redhat.com>
|
||||||
|
|
||||||
* gdb.texinfo (Top): Check SYSTEM_READLINE.
|
* gdb.texinfo (Top): Check SYSTEM_READLINE.
|
||||||
|
|
|
@ -22911,6 +22911,12 @@ watchpoint scope, the watchpoint remains valid even if execution of the
|
||||||
inferior leaves the scope of that watchpoint.
|
inferior leaves the scope of that watchpoint.
|
||||||
@end defmethod
|
@end defmethod
|
||||||
|
|
||||||
|
@defmethod Breakpoint delete
|
||||||
|
Permanently deletes the @value{GDBN} breakpoint. This also
|
||||||
|
invalidates the Python @code{Breakpoint} object. Any further access
|
||||||
|
to this object's attributes or methods will raise an error.
|
||||||
|
@end defmethod
|
||||||
|
|
||||||
@defivar Breakpoint enabled
|
@defivar Breakpoint enabled
|
||||||
This attribute is @code{True} if the breakpoint is enabled, and
|
This attribute is @code{True} if the breakpoint is enabled, and
|
||||||
@code{False} otherwise. This attribute is writable.
|
@code{False} otherwise. This attribute is writable.
|
||||||
|
|
|
@ -283,6 +283,23 @@ bppy_set_task (PyObject *self, PyObject *newvalue, void *closure)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Python function which deletes the underlying GDB breakpoint. This
|
||||||
|
triggers the breakpoint_deleted observer which will call
|
||||||
|
gdbpy_breakpoint_deleted; that function cleans up the Python
|
||||||
|
sections. */
|
||||||
|
|
||||||
|
static PyObject *
|
||||||
|
bppy_delete_breakpoint (PyObject *self, PyObject *args)
|
||||||
|
{
|
||||||
|
breakpoint_object *self_bp = (breakpoint_object *) self;
|
||||||
|
|
||||||
|
BPPY_REQUIRE_VALID (self_bp);
|
||||||
|
|
||||||
|
delete_breakpoint (self_bp->bp);
|
||||||
|
|
||||||
|
Py_RETURN_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Python function to set the ignore count of a breakpoint. */
|
/* Python function to set the ignore count of a breakpoint. */
|
||||||
static int
|
static int
|
||||||
|
@ -843,6 +860,8 @@ static PyMethodDef breakpoint_object_methods[] =
|
||||||
{
|
{
|
||||||
{ "is_valid", bppy_is_valid, METH_NOARGS,
|
{ "is_valid", bppy_is_valid, METH_NOARGS,
|
||||||
"Return true if this breakpoint is valid, false if not." },
|
"Return true if this breakpoint is valid, false if not." },
|
||||||
|
{ "delete", bppy_delete_breakpoint, METH_NOARGS,
|
||||||
|
"Delete the underlying GDB breakpoint." },
|
||||||
{ NULL } /* Sentinel. */
|
{ NULL } /* Sentinel. */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2010-11-29 Phil Muldoon <pmuldoon@redhat.com>
|
||||||
|
|
||||||
|
PR python/12199
|
||||||
|
|
||||||
|
* gdb.python/py-breakpoint.exp: Test the delete method.
|
||||||
|
|
||||||
2010-11-28 Jan Kratochvil <jan.kratochvil@redhat.com>
|
2010-11-28 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
Fix step_resume_breakpoint unsaved during an infcall.
|
Fix step_resume_breakpoint unsaved during an infcall.
|
||||||
|
|
|
@ -83,6 +83,29 @@ gdb_test "python print blist\[0\].number" "1" "Check breakpoint number"
|
||||||
gdb_test "python print blist\[1\].number" "2" "Check breakpoint number"
|
gdb_test "python print blist\[1\].number" "2" "Check breakpoint number"
|
||||||
gdb_test "python print blist\[2\].number" "3" "Check breakpoint number"
|
gdb_test "python print blist\[2\].number" "3" "Check breakpoint number"
|
||||||
|
|
||||||
|
# Start with a fresh gdb.
|
||||||
|
clean_restart ${testfile}
|
||||||
|
|
||||||
|
if ![runto_main] then {
|
||||||
|
fail "Cannot run to main."
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Test breakpoints are deleted correctly.
|
||||||
|
set deltst_location [gdb_get_line_number "Break at multiply."]
|
||||||
|
set end_location [gdb_get_line_number "Break at end."]
|
||||||
|
gdb_py_test_silent_cmd "python dp1 = gdb.Breakpoint (\"$deltst_location\")" "Set breakpoint" 0
|
||||||
|
gdb_breakpoint [gdb_get_line_number "Break at end."]
|
||||||
|
gdb_py_test_silent_cmd "python del_list = gdb.breakpoints()" "Get Breakpoint List" 0
|
||||||
|
gdb_test "python print len(del_list)" "3" "Number of breakpoints before delete"
|
||||||
|
gdb_continue_to_breakpoint "Break at multiply." ".*/$srcfile:$deltst_location.*"
|
||||||
|
gdb_py_test_silent_cmd "python dp1.delete()" "Delete Breakpoint" 0
|
||||||
|
gdb_test "python print dp1.number" "RuntimeError: Breakpoint 2 is invalid.*" "Check breakpoint invalidated"
|
||||||
|
gdb_py_test_silent_cmd "python del_list = gdb.breakpoints()" "Get Breakpoint List" 0
|
||||||
|
gdb_test "python print len(del_list)" "2" "Number of breakpoints after delete"
|
||||||
|
gdb_continue_to_breakpoint "Break at end." ".*/$srcfile:$end_location.*"
|
||||||
|
|
||||||
|
|
||||||
# Start with a fresh gdb.
|
# Start with a fresh gdb.
|
||||||
clean_restart ${testfile}
|
clean_restart ${testfile}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue