فهرست منبع

[serializer] some fpc fixes

Exilon 4 سال پیش
والد
کامیت
1471e75fb8
2فایلهای تغییر یافته به همراه4 افزوده شده و 2 حذف شده
  1. 2 1
      Quick.Json.Serializer.pas
  2. 2 1
      Quick.Serializer.Intf.pas

+ 2 - 1
Quick.Json.Serializer.pas

@@ -704,10 +704,11 @@ begin
       case aProperty.PropertyType.TypeKind of
       case aProperty.PropertyType.TypeKind of
         tkDynArray :
         tkDynArray :
           begin
           begin
-            if member is TJSONNull then Exit;
             {$IFNDEF FPC}
             {$IFNDEF FPC}
+            if member is TJSONNull then Exit;
             jArray := TJSONObject.ParseJSONValue(member.ToJSON) as TJSONArray;
             jArray := TJSONObject.ParseJSONValue(member.ToJSON) as TJSONArray;
             {$ELSE}
             {$ELSE}
+            if member.ClassType = TJSONNull.ClassType then Exit;
             jArray := TJSONArray(TJSONObject.ParseJSONValue(member.ToJSON));
             jArray := TJSONArray(TJSONObject.ParseJSONValue(member.ToJSON));
             {$ENDIF}
             {$ENDIF}
             try
             try

+ 2 - 1
Quick.Serializer.Intf.pas

@@ -3,10 +3,11 @@ unit Quick.Serializer.Intf;
 interface
 interface
 
 
 uses
 uses
-  System.SysUtils,
+  SysUtils,
   {$IFNDEF FPC}
   {$IFNDEF FPC}
   rtti;
   rtti;
   {$ELSE}
   {$ELSE}
+  Rtti,
   rttiutils;
   rttiutils;
   {$ENDIF}
   {$ENDIF}