diff options
author | Rob Mensching <rob@firegiant.com> | 2022-02-03 16:41:21 -0800 |
---|---|---|
committer | Rob Mensching <rob@firegiant.com> | 2022-02-08 09:42:04 -0800 |
commit | 69e750b3e6cc6e91e2a24075e19d644143c852f9 (patch) | |
tree | 2cc4b00abc89323dbc841f78b1cbac72bac3f3db | |
parent | 647f6bc49ecf035add9d41bd2bc0625cd8cb27da (diff) | |
download | wix-69e750b3e6cc6e91e2a24075e19d644143c852f9.tar.gz wix-69e750b3e6cc6e91e2a24075e19d644143c852f9.tar.bz2 wix-69e750b3e6cc6e91e2a24075e19d644143c852f9.zip |
Fix MSI validation
-rw-r--r-- | src/wix/WixToolset.Core.Native/Msi/Installer.cs | 3 | ||||
-rw-r--r-- | src/wix/WixToolset.Core.Native/WindowsInstallerValidator.cs | 15 | ||||
-rw-r--r-- | src/wix/WixToolset.Core.Native/cubes/darice.cub | bin | 684032 -> 694784 bytes | |||
-rw-r--r-- | src/wix/WixToolset.Core.Native/cubes/mergemod.cub | bin | 483328 -> 501248 bytes |
4 files changed, 13 insertions, 5 deletions
diff --git a/src/wix/WixToolset.Core.Native/Msi/Installer.cs b/src/wix/WixToolset.Core.Native/Msi/Installer.cs index 8a45aaa8..b2c2c630 100644 --- a/src/wix/WixToolset.Core.Native/Msi/Installer.cs +++ b/src/wix/WixToolset.Core.Native/Msi/Installer.cs | |||
@@ -4,6 +4,7 @@ namespace WixToolset.Core.Native.Msi | |||
4 | { | 4 | { |
5 | using System; | 5 | using System; |
6 | using System.Diagnostics; | 6 | using System.Diagnostics; |
7 | using System.Runtime.InteropServices; | ||
7 | using System.Text; | 8 | using System.Text; |
8 | 9 | ||
9 | /// <summary> | 10 | /// <summary> |
@@ -15,7 +16,7 @@ namespace WixToolset.Core.Native.Msi | |||
15 | /// one message box icon type, one default button, and one installation message type.</param> | 16 | /// one message box icon type, one default button, and one installation message type.</param> |
16 | /// <param name="message">Specifies the message text.</param> | 17 | /// <param name="message">Specifies the message text.</param> |
17 | /// <returns>-1 for an error, 0 if no action was taken, 1 if OK, 3 to abort.</returns> | 18 | /// <returns>-1 for an error, 0 if no action was taken, 1 if OK, 3 to abort.</returns> |
18 | public delegate int InstallUIHandler(IntPtr context, uint messageType, string message); | 19 | public delegate int InstallUIHandler(IntPtr context, uint messageType, [MarshalAs(UnmanagedType.LPWStr)] string message); |
19 | 20 | ||
20 | /// <summary> | 21 | /// <summary> |
21 | /// Represents the Windows Installer, provides wrappers to | 22 | /// Represents the Windows Installer, provides wrappers to |
diff --git a/src/wix/WixToolset.Core.Native/WindowsInstallerValidator.cs b/src/wix/WixToolset.Core.Native/WindowsInstallerValidator.cs index 9f4b26a3..8f2adf54 100644 --- a/src/wix/WixToolset.Core.Native/WindowsInstallerValidator.cs +++ b/src/wix/WixToolset.Core.Native/WindowsInstallerValidator.cs | |||
@@ -166,7 +166,7 @@ namespace WixToolset.Core.Native | |||
166 | { | 166 | { |
167 | var action = record.GetString(1); | 167 | var action = record.GetString(1); |
168 | 168 | ||
169 | if (!this.SuppressedIces.Contains(action) && this.Ices.Contains(action)) | 169 | if (!this.SuppressedIces.Contains(action) && (this.Ices.Count == 0 || this.Ices.Contains(action))) |
170 | { | 170 | { |
171 | actions.Add(action); | 171 | actions.Add(action); |
172 | } | 172 | } |
@@ -281,11 +281,18 @@ namespace WixToolset.Core.Native | |||
281 | 281 | ||
282 | // If we're getting messges during the validation session, log them. | 282 | // If we're getting messges during the validation session, log them. |
283 | // Otherwise, ignore the messages. | 283 | // Otherwise, ignore the messages. |
284 | if (!this.ValidationSessionInProgress) | 284 | if (this.ValidationSessionInProgress) |
285 | { | 285 | { |
286 | var parsedMessage = ParseValidationMessage(message, this.CurrentIce); | 286 | try |
287 | { | ||
288 | var parsedMessage = ParseValidationMessage(message, this.CurrentIce); | ||
287 | 289 | ||
288 | continueValidation = this.Callback.ValidationMessage(parsedMessage); | 290 | continueValidation = this.Callback.ValidationMessage(parsedMessage); |
291 | } | ||
292 | catch | ||
293 | { | ||
294 | return - 1; | ||
295 | } | ||
289 | } | 296 | } |
290 | 297 | ||
291 | return continueValidation ? 1 : 3; | 298 | return continueValidation ? 1 : 3; |
diff --git a/src/wix/WixToolset.Core.Native/cubes/darice.cub b/src/wix/WixToolset.Core.Native/cubes/darice.cub index 4292fede..dab45677 100644 --- a/src/wix/WixToolset.Core.Native/cubes/darice.cub +++ b/src/wix/WixToolset.Core.Native/cubes/darice.cub | |||
Binary files differ | |||
diff --git a/src/wix/WixToolset.Core.Native/cubes/mergemod.cub b/src/wix/WixToolset.Core.Native/cubes/mergemod.cub index def6dd1a..2042a99e 100644 --- a/src/wix/WixToolset.Core.Native/cubes/mergemod.cub +++ b/src/wix/WixToolset.Core.Native/cubes/mergemod.cub | |||
Binary files differ | |||