Use gdbpy_enter in py-cmd.c
authorTom Tromey <tom@tromey.com>
Mon, 7 Nov 2016 23:02:16 +0000 (16:02 -0700)
committerTom Tromey <tom@tromey.com>
Wed, 11 Jan 2017 02:13:40 +0000 (19:13 -0700)
Change py-cmd.c to use gdbpy_enter.

2017-01-10  Tom Tromey  <tom@tromey.com>

* python/py-cmd.c (cmdpy_destroyer)
(cmdpy_completer_handle_brkchars, cmdpy_completer): Use
gdbpy_enter.

gdb/ChangeLog
gdb/python/py-cmd.c

index fb156a9ec638639e957c31e769dfd92157b56265..f02b2354af61273c2301ad8845ef3eafec37715e 100644 (file)
@@ -1,3 +1,9 @@
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * python/py-cmd.c (cmdpy_destroyer)
+       (cmdpy_completer_handle_brkchars, cmdpy_completer): Use
+       gdbpy_enter.
+
 2017-01-10  Tom Tromey  <tom@tromey.com>
 
        * python/py-breakpoint.c (gdbpy_breakpoint_cond_says_stop): Use
index e2879b7cb3fba75d28c150a7db25fd76679abb33..9afa7e4838050690b555adc242fb4080910f53d5 100644 (file)
@@ -96,9 +96,8 @@ static void
 cmdpy_destroyer (struct cmd_list_element *self, void *context)
 {
   cmdpy_object *cmd;
-  struct cleanup *cleanup;
 
-  cleanup = ensure_python_env (get_current_arch (), current_language);
+  gdbpy_enter enter_py (get_current_arch (), current_language);
 
   /* Release our hold on the command object.  */
   cmd = (cmdpy_object *) context;
@@ -110,8 +109,6 @@ cmdpy_destroyer (struct cmd_list_element *self, void *context)
   xfree ((char *) self->name);
   xfree ((char *) self->doc);
   xfree ((char *) self->prefixname);
-
-  do_cleanups (cleanup);
 }
 
 /* Called by gdb to invoke the command.  */
@@ -287,9 +284,8 @@ cmdpy_completer_handle_brkchars (struct cmd_list_element *command,
                                 const char *text, const char *word)
 {
   PyObject *resultobj = NULL;
-  struct cleanup *cleanup;
 
-  cleanup = ensure_python_env (get_current_arch (), current_language);
+  gdbpy_enter enter_py (get_current_arch (), current_language);
 
   /* Calling our helper to obtain the PyObject of the Python
      function.  */
@@ -324,7 +320,6 @@ cmdpy_completer_handle_brkchars (struct cmd_list_element *command,
  done:
 
   Py_XDECREF (resultobj);
-  do_cleanups (cleanup);
 }
 
 /* Called by gdb for command completion.  */
@@ -335,9 +330,8 @@ cmdpy_completer (struct cmd_list_element *command,
 {
   PyObject *resultobj = NULL;
   VEC (char_ptr) *result = NULL;
-  struct cleanup *cleanup;
 
-  cleanup = ensure_python_env (get_current_arch (), current_language);
+  gdbpy_enter enter_py (get_current_arch (), current_language);
 
   /* Calling our helper to obtain the PyObject of the Python
      function.  */
@@ -404,7 +398,6 @@ cmdpy_completer (struct cmd_list_element *command,
  done:
 
   Py_XDECREF (resultobj);
-  do_cleanups (cleanup);
 
   return result;
 }