Fix step-over-{trips-on-watchpoint|lands-on-breakpoint}.exp race
[deliverable/binutils-gdb.git] / gdb / python / py-bpevent.c
index c7f79654a16d5c66cab856c147a6e68761fcf8b8..abc9dbab513faa5043e6d0b3ba40efdca542aac1 100644 (file)
@@ -1,6 +1,6 @@
 /* Python interface to inferior breakpoint stop events.
 
-   Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+   Copyright (C) 2009-2015 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
+#include "defs.h"
 #include "py-stopevent.h"
 
-static PyTypeObject breakpoint_event_object_type;
+extern PyTypeObject breakpoint_event_object_type
+    CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF ("event_object");
 
-/* Create and initialize a BreakpointEvent object.  */
+/* Create and initialize a BreakpointEvent object.  This acquires new
+   references to BREAKPOINT_LIST and FIRST_BP.  */
 
 PyObject *
-create_breakpoint_event_object (PyObject *breakpoint)
+create_breakpoint_event_object (PyObject *breakpoint_list, PyObject *first_bp)
 {
   PyObject *breakpoint_event_obj =
       create_stop_event_object (&breakpoint_event_object_type);
@@ -34,7 +37,11 @@ create_breakpoint_event_object (PyObject *breakpoint)
 
   if (evpy_add_attribute (breakpoint_event_obj,
                           "breakpoint",
-                          breakpoint) < 0)
+                          first_bp) < 0)
+    goto fail;
+  if (evpy_add_attribute (breakpoint_event_obj,
+                          "breakpoints",
+                          breakpoint_list) < 0)
     goto fail;
 
   return breakpoint_event_obj;
@@ -48,5 +55,4 @@ GDBPY_NEW_EVENT_TYPE (breakpoint,
                       "gdb.BreakpointEvent",
                       "BreakpointEvent",
                       "GDB breakpoint stop event object",
-                      stop_event_object_type,
-                      static);
+                      stop_event_object_type);
This page took 0.028773 seconds and 4 git commands to generate.