mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 10:39:18 +02:00
* Use 64bit conversion of debug adresses. Patch #0017679 by Juha Manninen
git-svn-id: trunk@27818 -
This commit is contained in:
parent
f1b2a24882
commit
b3363f56a1
@ -4249,7 +4249,7 @@ function TGDBMIDebugger.StartDebugging(const AContinueCommand: String): Boolean;
|
|||||||
S := GetPart(['at address ', ' at '], ['.', ' '], R.Values);
|
S := GetPart(['at address ', ' at '], ['.', ' '], R.Values);
|
||||||
if S <> ''
|
if S <> ''
|
||||||
then begin
|
then begin
|
||||||
FMainAddr := StrToIntDef(S, 0);
|
FMainAddr := StrToQWordDef(S, 0);
|
||||||
ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
|
ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
|
||||||
Result := R.State <> dsError;
|
Result := R.State <> dsError;
|
||||||
if Result then Exit;
|
if Result then Exit;
|
||||||
@ -4261,7 +4261,7 @@ function TGDBMIDebugger.StartDebugging(const AContinueCommand: String): Boolean;
|
|||||||
if not Result then Exit;
|
if not Result then Exit;
|
||||||
|
|
||||||
ResultList := TGDBMINameValueList.Create(R, ['bkpt']);
|
ResultList := TGDBMINameValueList.Create(R, ['bkpt']);
|
||||||
FMainAddr := StrToIntDef(ResultList.Values['addr'], 0);
|
FMainAddr := StrToQWordDef(ResultList.Values['addr'], 0);
|
||||||
ResultList.Free;
|
ResultList.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -4359,7 +4359,7 @@ begin
|
|||||||
then begin
|
then begin
|
||||||
// We could not set our initial break to get info and allow stepping
|
// We could not set our initial break to get info and allow stepping
|
||||||
// Try it with the program entry point
|
// Try it with the program entry point
|
||||||
FMainAddr := StrToIntDef(EntryPoint, 0);
|
FMainAddr := StrToQWordDef(EntryPoint, 0);
|
||||||
ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
|
ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
|
||||||
TempInstalled := R.State <> dsError;
|
TempInstalled := R.State <> dsError;
|
||||||
end;
|
end;
|
||||||
@ -4533,7 +4533,7 @@ begin
|
|||||||
and (TGDBMIDebugger(Debugger).FBreakAtMain = nil)
|
and (TGDBMIDebugger(Debugger).FBreakAtMain = nil)
|
||||||
then begin
|
then begin
|
||||||
// Check if this BP is at the same location as the temp break
|
// Check if this BP is at the same location as the temp break
|
||||||
if StrToIntDef(ResultList.Values['addr'], 0) = TGDBMIDebugger(Debugger).FMainAddr
|
if StrToQWordDef(ResultList.Values['addr'], 0) = TGDBMIDebugger(Debugger).FMainAddr
|
||||||
then TGDBMIDebugger(Debugger).FBreakAtMain := Self;
|
then TGDBMIDebugger(Debugger).FBreakAtMain := Self;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user