View Issue Details

IDProjectCategoryView StatusLast Update
0017645LazarusDebuggerpublic2010-11-14 23:09
ReporterWillibald KrennAssigned ToMartin Friebe 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product VersionProduct Build 
Target Version0.9.30Fixed in Version0.9.29 (SVN) 
Summary0017645: Replace StrToIntDef w. StrToInt64Def in gdbmidebugger.pp
DescriptionLazarus debugger only works with 32 bit addrs.
Additional InformationIndex: gdbmidebugger.pp
===================================================================
--- gdbmidebugger.pp (revision 27526)
+++ gdbmidebugger.pp (working copy)
@@ -1641,7 +1641,7 @@
       New(Disasm);
       Disasm^.FileName := AFileName;
       Disasm^.Line := ALine;
- Disasm^.Address := StrToIntDef(Unquote(InstList.Values['address']), 0);
+ Disasm^.Address := StrToInt64Def(Unquote(InstList.Values['address']), 0);
       S := InstList.Values['func-name'];
       if S <> FuncNameQ
       then begin
@@ -1892,7 +1892,7 @@
         then begin
           Item := AsmList.Items[1];
           InstList.Init(Item^.NamePtr, Item^.NameLen);
- AsmLine.Next := StrToIntDef(Unquote(InstList.Values['address']), 0);
+ AsmLine.Next := StrToInt64Def(Unquote(InstList.Values['address']), 0);
           AddAsmLine(Addr, AsmLine);
         end;
       end;
@@ -4119,7 +4119,7 @@
       S := GetPart(['at address ', ' at '], ['.', ' '], R.Values);
       if S <> ''
       then begin
- ExecuteCommand('-break-insert *%u', [StrToIntDef(S, 0)], [cfIgnoreError], R);
+ ExecuteCommand('-break-insert *%u', [StrToInt64Def(S, 0)], [cfIgnoreError], R);
         if R.State = dsError then Exit(-1);
         ResultList := TGDBMINameValueList.Create(R, ['bkpt']);
         Result := StrToIntDef(ResultList.Values['number'], -1);
@@ -4243,7 +4243,7 @@
       S := GetPart(['at address ', ' at '], ['.', ' '], R.Values);
       if S <> ''
       then begin
- FMainAddr := StrToIntDef(S, 0);
+ FMainAddr := StrToInt64Def(S, 0);
         ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
         Result := R.State <> dsError;
         if Result then Exit;
@@ -4255,7 +4255,7 @@
     if not Result then Exit;
 
     ResultList := TGDBMINameValueList.Create(R, ['bkpt']);
- FMainAddr := StrToIntDef(ResultList.Values['addr'], 0);
+ FMainAddr := StrToInt64Def(ResultList.Values['addr'], 0);
     ResultList.Free;
   end;
 
@@ -4353,7 +4353,7 @@
   then begin
     // We could not set our initial break to get info and allow stepping
     // Try it with the program entry point
- FMainAddr := StrToIntDef(EntryPoint, 0);
+ FMainAddr := StrToInt64Def(EntryPoint, 0);
     ExecuteCommand('-break-insert -t *%u', [FMainAddr], [cfIgnoreError], R);
     TempInstalled := R.State <> dsError;
   end;
@@ -4527,7 +4527,7 @@
     and (TGDBMIDebugger(Debugger).FBreakAtMain = nil)
     then begin
       // Check if this BP is at the same location as the temp break
- if StrToIntDef(ResultList.Values['addr'], 0) = TGDBMIDebugger(Debugger).FMainAddr
+ if StrToInt64Def(ResultList.Values['addr'], 0) = TGDBMIDebugger(Debugger).FMainAddr
       then TGDBMIDebugger(Debugger).FBreakAtMain := Self;
     end;
 
TagsNo tags attached.
Fixed in Revision28168
LazTarget1.0
WidgetsetWin32/Win64
Attached Files

Relationships

related to 0017450 closedMarc Weustink Breakpoints do not work in Lazarus in Win x64 Seven 
related to 0015587 resolvedMartin Friebe Cannot debug DLL on Windows x64 

Activities

Martin Friebe

2010-11-09 18:49

manager   ~0042927

applied, please test and close if ok

Willibald Krenn

2010-11-14 23:09

reporter   ~0043050

Thanks, seems to be working.

Issue History

Date Modified Username Field Change
2010-10-16 13:18 Willibald Krenn New Issue
2010-10-16 13:18 Willibald Krenn Status new => assigned
2010-10-16 13:18 Willibald Krenn Assigned To => Marc Weustink
2010-10-16 13:18 Willibald Krenn Widgetset => Win32/Win64
2010-11-09 18:48 Martin Friebe Assigned To Marc Weustink => Martin Friebe
2010-11-09 18:49 Martin Friebe Fixed in Revision => 28168
2010-11-09 18:49 Martin Friebe LazTarget => 1.0
2010-11-09 18:49 Martin Friebe Status assigned => resolved
2010-11-09 18:49 Martin Friebe Fixed in Version => 0.9.29 (SVN)
2010-11-09 18:49 Martin Friebe Resolution open => fixed
2010-11-09 18:49 Martin Friebe Note Added: 0042927
2010-11-09 18:49 Martin Friebe Target Version => 0.9.30
2010-11-09 19:23 Martin Friebe Relationship added related to 0017450
2010-11-14 23:09 Willibald Krenn Status resolved => closed
2010-11-14 23:09 Willibald Krenn Note Added: 0043050
2010-11-26 14:14 Martin Friebe Relationship added related to 0015587