* correctly handle AsString if Nil had been passed to Make

git-svn-id: trunk@36983 -
This commit is contained in:
svenbarth 2017-08-20 19:19:07 +00:00
parent 31f5836e06
commit a03b9d0fc4

View File

@ -712,18 +712,18 @@ begin
end; end;
function TValue.AsString: string; function TValue.AsString: string;
var
s: string;
begin begin
if (Kind in [tkSString, tkAString, tkUString, tkWString]) and not Assigned(FData.FValueData) then
Result := ''
else
case Kind of case Kind of
tkSString: tkSString:
s := PShortString(FData.FValueData.GetReferenceToRawData)^; Result := PShortString(FData.FValueData.GetReferenceToRawData)^;
tkAString: tkAString:
s := PAnsiString(FData.FValueData.GetReferenceToRawData)^; Result := PAnsiString(FData.FValueData.GetReferenceToRawData)^;
else else
raise EInvalidCast.Create(SErrInvalidTypecast); raise EInvalidCast.Create(SErrInvalidTypecast);
end; end;
result := s;
end; end;
function TValue.AsExtended: Extended; function TValue.AsExtended: Extended;