浏览代码

Better solution.

Martijn Laan 6 年之前
父节点
当前提交
89c6ef192a
共有 1 个文件被更改,包括 3 次插入4 次删除
  1. 3 4
      Projects/Undo.pas

+ 3 - 4
Projects/Undo.pas

@@ -106,9 +106,8 @@ type
   TDeleteUninstallDataFilesProc = procedure;
 
   TUninstallLogFlags = set of (ufAdminInstalled, ufDontCheckRecCRCs,
-    ufModernStyleOld { pre 6.0.0 - was always set so can't reuse it },
-    ufAlwaysRestart, ufChangesEnvironment, ufWin64, ufPowerUserInstalled,
-    ufModernStyle);
+    ufModernStyle, ufAlwaysRestart, ufChangesEnvironment, ufWin64,
+    ufPowerUserInstalled);
 
   TUninstallLog = class
   private
@@ -1250,7 +1249,7 @@ begin
       WriteSafeHeaderString(Header.AppName, AppName, SizeOf(Header.AppName));
     if Version > Header.Version then
       Header.Version := Version;
-    TUninstallLogFlags((@Header.Flags)^) := TUninstallLogFlags((@Header.Flags)^) + Flags;
+    TUninstallLogFlags((@Header.Flags)^) := TUninstallLogFlags((@Header.Flags)^) - [ufModernStyle] + Flags;
     Header.CRC := GetCRC32(Header, SizeOf(Header)-SizeOf(Longint));
     { Prior to rewriting the header with the new EndOffset value, ensure the
       records we wrote earlier are flushed to disk. This should prevent the