|
@@ -614,7 +614,7 @@ function TValue.GetDataSize: SizeInt;
|
|
begin
|
|
begin
|
|
if IsEmpty then
|
|
if IsEmpty then
|
|
Result := 0
|
|
Result := 0
|
|
- else if Assigned(FData.FValueData) then
|
|
|
|
|
|
+ else if Assigned(FData.FValueData) and (Kind <> tkSString) then
|
|
Result := FData.FValueData.GetDataSize
|
|
Result := FData.FValueData.GetDataSize
|
|
else begin
|
|
else begin
|
|
Result := 0;
|
|
Result := 0;
|
|
@@ -660,7 +660,8 @@ begin
|
|
{ ? }
|
|
{ ? }
|
|
Result := SizeOf(TMethod);
|
|
Result := SizeOf(TMethod);
|
|
tkSString:
|
|
tkSString:
|
|
- Result := SizeOf(ShortString);
|
|
|
|
|
|
+ { ShortString can hold max. 254 characters as [0] is Length and [255] is #0 }
|
|
|
|
+ Result := SizeOf(ShortString) - 2;
|
|
tkVariant:
|
|
tkVariant:
|
|
Result := SizeOf(Variant);
|
|
Result := SizeOf(Variant);
|
|
tkProcVar:
|
|
tkProcVar:
|