FpDebug: Fix uninitialized result in watch-to-intf

This commit is contained in:
Martin 2022-06-18 16:41:05 +02:00
parent b2c9e115f8
commit 4d3a8af105

View File

@ -617,7 +617,7 @@ begin
FHasEmbeddedPointer := True
else
if FHasEmbeddedPointer and (FLastValueKind <> skPointer) then
exit;
exit(True); // not an error
// Allow only one level, after an embedded pointer (pointer nested in other data-type)
end;
@ -683,10 +683,10 @@ function TFpWatchResultConvertor.DoWritePointerWatchResultData(
): Boolean;
begin
if FRecurseAddrList.IndexOf(AnAddr) >= 0 then
exit;
exit(True);
if AnAddr <> 0 then
FRecurseAddrList.Add(AnAddr);
DoWriteWatchResultData(AnFpValue, AnResData);
Result := DoWriteWatchResultData(AnFpValue, AnResData);
if AnAddr <> 0 then
FRecurseAddrList.Remove(AnAddr);
end;