|
@@ -1106,6 +1106,14 @@ begin
|
|
gdberrorbuf.reset;
|
|
gdberrorbuf.reset;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+{$ifdef GDB_RAW_OUTPUT}
|
|
|
|
+ If StrLen(GetRaw)>0 then
|
|
|
|
+ begin
|
|
|
|
+ GDBWindow^.WriteOutputText(GetRaw);
|
|
|
|
+ if in_command=0 then
|
|
|
|
+ gdbrawbuf.reset;
|
|
|
|
+ end;
|
|
|
|
+{$endif GDB_RAW_OUTPUT}
|
|
If StrLen(GetOutput)>0 then
|
|
If StrLen(GetOutput)>0 then
|
|
begin
|
|
begin
|
|
GDBWindow^.WriteOutputText(GetOutput);
|
|
GDBWindow^.WriteOutputText(GetOutput);
|
|
@@ -1126,6 +1134,10 @@ begin
|
|
{ We should do something special for errors !! }
|
|
{ We should do something special for errors !! }
|
|
If StrLen(GetError)>0 then
|
|
If StrLen(GetError)>0 then
|
|
GDBWindow^.WriteErrorText(GetError);
|
|
GDBWindow^.WriteErrorText(GetError);
|
|
|
|
+{$ifdef GDB_RAW_OUTPUT}
|
|
|
|
+ If StrLen(GetRaw)>0 then
|
|
|
|
+ GDBWindow^.WriteOutputText(GetRaw);
|
|
|
|
+{$endif GDB_RAW_OUTPUT}
|
|
GDBWindow^.WriteOutputText(GetOutput);
|
|
GDBWindow^.WriteOutputText(GetOutput);
|
|
GDBWindow^.Editor^.TextEnd;
|
|
GDBWindow^.Editor^.TextEnd;
|
|
end;
|
|
end;
|
|
@@ -1343,8 +1355,8 @@ begin
|
|
begin
|
|
begin
|
|
if ExitAddr=address then
|
|
if ExitAddr=address then
|
|
begin
|
|
begin
|
|
- Command('f '+IntToStr(i));
|
|
|
|
- if assigned(file_name) then
|
|
|
|
|
|
+ if SelectFrameCommand(i) and
|
|
|
|
+ assigned(file_name) then
|
|
begin
|
|
begin
|
|
s:=strpas(file_name);
|
|
s:=strpas(file_name);
|
|
line:=line_number;
|
|
line:=line_number;
|
|
@@ -2925,9 +2937,9 @@ procedure TWatch.Get_new_value;
|
|
if not Debugger^.set_current_frame(curframe) then
|
|
if not Debugger^.set_current_frame(curframe) then
|
|
loop_higher:=false;
|
|
loop_higher:=false;
|
|
{$ifdef FrameNameKnown}
|
|
{$ifdef FrameNameKnown}
|
|
- s2:='/x '+FrameName;
|
|
|
|
|
|
+ s2:=FrameName;
|
|
{$else not FrameNameKnown}
|
|
{$else not FrameNameKnown}
|
|
- s2:='/x $ebp';
|
|
|
|
|
|
+ s2:='$ebp';
|
|
{$endif FrameNameKnown}
|
|
{$endif FrameNameKnown}
|
|
if not getValue(s2) then
|
|
if not getValue(s2) then
|
|
loop_higher:=false;
|
|
loop_higher:=false;
|
|
@@ -3565,7 +3577,7 @@ end;
|
|
{ select frame for watches }
|
|
{ select frame for watches }
|
|
If not assigned(Debugger) then
|
|
If not assigned(Debugger) then
|
|
exit;
|
|
exit;
|
|
- Debugger^.Command('f '+IntToStr(Focused));
|
|
|
|
|
|
+ Debugger^.SelectFrameCommand(Focused);
|
|
{ for local vars }
|
|
{ for local vars }
|
|
Debugger^.RereadWatches;
|
|
Debugger^.RereadWatches;
|
|
{$endif NODEBUG}
|
|
{$endif NODEBUG}
|
|
@@ -3579,7 +3591,7 @@ end;
|
|
{ select frame for watches }
|
|
{ select frame for watches }
|
|
If not assigned(Debugger) then
|
|
If not assigned(Debugger) then
|
|
exit;
|
|
exit;
|
|
- Debugger^.Command('f '+IntToStr(Focused));
|
|
|
|
|
|
+ Debugger^.SelectFrameCommand(Focused);
|
|
{ for local vars }
|
|
{ for local vars }
|
|
Debugger^.RereadWatches;
|
|
Debugger^.RereadWatches;
|
|
{$endif}
|
|
{$endif}
|