Fetch latest .cubs & suppress ICE103...
...for merge module validations, because mergemod.cub has a CA DLL that doesn't export ICE103. Fixes https://github.com/wixtoolset/issues/issues/6567.
Bob Arnson committed
Feb 9, 2023 at 18:13 UTC
15218b98004e5966bb8b8135c319e1a02978f4c8
4 files changed
+11
-7
src/wix/WixToolset.Core.Native/cubes/darice.cub
Binary files a/src/wix/WixToolset.Core.Native/cubes/darice.cub and b/src/wix/WixToolset.Core.Native/cubes/darice.cub differ
src/wix/WixToolset.Core.Native/cubes/mergemod.cub
Binary files a/src/wix/WixToolset.Core.Native/cubes/mergemod.cub and b/src/wix/WixToolset.Core.Native/cubes/mergemod.cub differ
src/wix/WixToolset.Core.WindowsInstaller/Validate/ValidateDatabaseCommand.cs
+8
-2
@@ -26,10 +26,16 @@ namespace WixToolset.Core.WindowsInstaller.Validate
26
this.DatabasePath = databasePath;
27
this.CubeFiles = cubeFiles;
28
this.Ices = ices;
29
- this.SuppressedIces = suppressedIces == null ? WellKnownSuppressedIces : suppressedIces.Union(WellKnownSuppressedIces);
30
-
29
this.IntermediateFolder = intermediateFolder;
30
this.OutputSourceLineNumber = new SourceLineNumber(databasePath);
31
+ this.SuppressedIces = suppressedIces == null ? WellKnownSuppressedIces : suppressedIces.Union(WellKnownSuppressedIces);
32
+
33
+ // Suppress ICE103 for merge modules because the custom action DLL in mergemod.cub is borked.
34
+ // See https://github.com/wixtoolset/issues/issues/6567.
35
+ if (Path.GetExtension(this.DatabasePath) == ".msm")
36
+ {
37
+ this.SuppressedIces = this.SuppressedIces.Union(new[] { "ICE103" });
38
+ }
39
}
40
41
public IEnumerable<ITrackedFile> TrackedFiles { get; private set; }
src/wix/test/WixToolsetTest.CoreIntegration/ValidationFixture.cs
+3
-5
@@ -20,7 +20,6 @@ namespace WixToolsetTest.CoreIntegration
20
// These tests are still interesting (and complex) enough to keep
21
// around for manual testing. Uncomment or define the following
22
// line to do so.
23
-#if DISABLE_VALIDATION_TESTS_DUE_TO_WINDOWS_INSTALLER_INCONSISTENCIES
23
public class ValidationFixture
24
{
25
[Fact]
@@ -213,7 +212,7 @@ namespace WixToolsetTest.CoreIntegration
212
213
File.WriteAllLines(Path.Combine(testLogsFolder, "validate.txt"), validationResult.Messages.Select(m => m.ToString()));
214
216
- Assert.Equal(1, validationResult.ExitCode);
215
+ Assert.Equal(1076, validationResult.ExitCode);
216
217
var messages = validationResult.Messages.Select(m => m.ToString()).ToArray();
218
WixAssert.CompareLineByLine(new[]
@@ -302,7 +301,7 @@ namespace WixToolsetTest.CoreIntegration
301
msiPath
302
});
303
305
- Assert.Equal(1, validationResult.ExitCode);
304
+ Assert.Equal(1076, validationResult.ExitCode);
305
306
var messages = validationResult.Messages.Select(m => m.ToString()).ToArray();
307
WixAssert.CompareLineByLine(new[]
@@ -342,7 +341,7 @@ namespace WixToolsetTest.CoreIntegration
341
msiPath
342
});
343
345
- Assert.Equal(1, validationResult.ExitCode);
344
+ Assert.Equal(1076, validationResult.ExitCode);
345
346
var messages = validationResult.Messages.Select(m => m.ToString()).ToArray();
347
WixAssert.CompareLineByLine(new[]
@@ -423,5 +422,4 @@ namespace WixToolsetTest.CoreIntegration
422
}
423
}
424
}
426
-#endif
425
}