* infrun.c (resume): Discard cleanups on early exit path.
authorVladimir Prus <vladimir@codesourcery.com>
Sat, 12 Jul 2008 13:42:54 +0000 (13:42 +0000)
committerVladimir Prus <vladimir@codesourcery.com>
Sat, 12 Jul 2008 13:42:54 +0000 (13:42 +0000)
gdb/ChangeLog
gdb/infrun.c

index 5fed05387b140698852b1ab74a90fe111a337b0d..89072a6d1802fd74f2286a6b901bb846e9df3d81 100644 (file)
@@ -1,3 +1,7 @@
+2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
+
+       * infrun.c (resume): Discard cleanups on early exit path.
+
 2008-07-12  Vladimir Prus  <vladimir@codesourcery.com>
 
         * infrun.c (normal_stop): For MI, report which threads
index 5473c998d453a69b2e5285e2087298fd37ca9a05..07b34fd54fc9cd3fba0f645f1ca99a9f9a5f3ce8 100644 (file)
@@ -969,10 +969,13 @@ a command like `return' or `jump' to continue execution."));
       && sig == TARGET_SIGNAL_0)
     {
       if (!displaced_step_prepare (inferior_ptid))
-       /* Got placed in displaced stepping queue.  Will be resumed
-          later when all the currently queued displaced stepping
-          requests finish.  */
-       return;
+       {
+         /* Got placed in displaced stepping queue.  Will be resumed
+            later when all the currently queued displaced stepping
+            requests finish.  */
+         discard_cleanups (old_cleanups);
+         return;
+       }
     }
 
   if (step && gdbarch_software_single_step_p (gdbarch))