瀏覽代碼

TWriter: fix default value handling for Int64/QWord values. Issue #37525

git-svn-id: trunk@46337 -
ondrej 5 年之前
父節點
當前提交
67acb289d7
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      rtl/objpas/classes/writer.inc

+ 2 - 2
rtl/objpas/classes/writer.inc

@@ -1171,8 +1171,8 @@ begin
         if HasAncestor then
           DefInt64Value := GetInt64Prop(Ancestor, PropInfo)
         else
-          DefInt64Value := 0;
-        if Int64Value <> DefInt64Value then
+          DefInt64Value := PPropInfo(PropInfo)^.Default;
+        if (Int64Value <> DefInt64Value) or (DefInt64Value=longint($80000000)) then
         begin
           Driver.BeginProperty(FPropPath + PPropInfo(PropInfo)^.Name);
           WriteInteger(Int64Value);