Browse Source

* don't hang in TGDBInterface.WaitForProgramStop if gdb returns an error in
response to the '-exec-continue' command

git-svn-id: trunk@30029 -

nickysn 10 years ago
parent
commit
d8fe799798
1 changed files with 18 additions and 0 deletions
  1. 18 0
      ide/gdbmiint.pas

+ 18 - 0
ide/gdbmiint.pas

@@ -317,6 +317,12 @@ Ignore:
 
           We have: GDB.ExecAsyncOutput.Parameters['wpnum'].AsLongInt }
         i_gdb_command('-exec-continue');
+        if not GDB.ResultRecord.Success then
+        begin
+          DebuggerScreen;
+          got_error := True;
+          exit;
+        end;
         goto Ignore;
       end;
     'signal-received':
@@ -327,6 +333,12 @@ Ignore:
                GDB.ExecAsyncOutput.PArameters['signal-meaning'].AsString (e.g. 'Terminated')
           }
         i_gdb_command('-exec-continue');
+        if not GDB.ResultRecord.Success then
+        begin
+          DebuggerScreen;
+          got_error := True;
+          exit;
+        end;
         goto Ignore;
       end;
     'breakpoint-hit',
@@ -363,6 +375,12 @@ Ignore:
         begin
           UserScreen;
           i_gdb_command('-exec-continue');
+          if not GDB.ResultRecord.Success then
+          begin
+            DebuggerScreen;
+            got_error := True;
+            exit;
+          end;
           goto Ignore;
         end;
       end;