Debugger: Register Window, fix updating register values. Broken in some cases since r60049 #52e85d555e

git-svn-id: branches/fixes_2_0@60384 -
This commit is contained in:
mattias 2019-02-09 08:47:19 +00:00
parent e87f8e4c61
commit ae80e4f62a

View File

@ -363,21 +363,21 @@ begin
end;
FNeedUpdateAgain := False;
Reg := GetCurrentRegisters;
if (Reg = nil) or (reg.DataValidity<> ddsValid) then begin
if (DebugBoss = nil) or not (DebugBoss.State in [dsPause, dsInternalPause, dsRun]) then
lvRegisters.Items.Clear;
if (reg <> nil) then
reg.Count;
for n := 0 to lvRegisters.Items.Count - 1 do
lvRegisters.Items[n].SubItems[0] := '<Unavailable>';
exit;
end;
List := TStringList.Create;
BeginUpdate;
try
BeginUpdate;
Reg := GetCurrentRegisters;
if (Reg = nil) or (reg.DataValidity<> ddsValid) then begin
if (DebugBoss = nil) or not (DebugBoss.State in [dsPause, dsInternalPause, dsRun]) then
lvRegisters.Items.Clear;
if (reg <> nil) then
reg.Count;
for n := 0 to lvRegisters.Items.Count - 1 do
lvRegisters.Items[n].SubItems[0] := '<Unavailable>';
exit;
end;
List := TStringList.Create;
try
//Get existing items
for n := 0 to lvRegisters.Items.Count - 1 do
@ -418,10 +418,10 @@ begin
lvRegisters.Items.Delete(TListItem(List.Objects[n]).Index);
finally
EndUpdate;
List.Free;
end;
finally
List.Free;
EndUpdate;
end;
lvRegistersSelectItem(nil, nil, True);