Browse Source

* always clear the variant part of FData

git-svn-id: trunk@36975 -
svenbarth 8 years ago
parent
commit
6a95291eda
1 changed files with 2 additions and 0 deletions
  1. 2 0
      packages/rtl-objpas/src/inc/rtti.pp

+ 2 - 0
packages/rtl-objpas/src/inc/rtti.pp

@@ -546,6 +546,8 @@ type
   PQWordBool = ^QWordBool;
   PQWordBool = ^QWordBool;
 begin
 begin
   result.FData.FTypeInfo:=ATypeInfo;
   result.FData.FTypeInfo:=ATypeInfo;
+  { resets the whole variant part; FValueData is already Nil }
+  Result.FData.FAsUInt64 := 0;
   case ATypeInfo^.Kind of
   case ATypeInfo^.Kind of
     tkSString  : result.FData.FValueData := TValueDataIntImpl.CreateCopy(ABuffer, Length(PShortString(ABuffer)^) + 1, ATypeInfo, True);
     tkSString  : result.FData.FValueData := TValueDataIntImpl.CreateCopy(ABuffer, Length(PShortString(ABuffer)^) + 1, ATypeInfo, True);
     tkWString,
     tkWString,