diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2020-12-21 16:37:04 -0600 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2020-12-21 16:49:04 -0600 |
commit | 643a5c5db1da6fb68fdc353bbbdbecaa1964425e (patch) | |
tree | ef10f7bfba8679aaf8636105badbe6b83c7049c5 | |
parent | d085e938317c80f62a3b484d20ed1a6cf89bb59d (diff) | |
download | wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.tar.gz wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.tar.bz2 wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.zip |
Fix parsing Behavior in ExitCode element.
-rw-r--r-- | src/WixToolset.Core/Compiler_Bundle.cs | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/WixToolset.Core/Compiler_Bundle.cs b/src/WixToolset.Core/Compiler_Bundle.cs index b8386138..482232c7 100644 --- a/src/WixToolset.Core/Compiler_Bundle.cs +++ b/src/WixToolset.Core/Compiler_Bundle.cs | |||
@@ -1774,9 +1774,24 @@ namespace WixToolset.Core | |||
1774 | break; | 1774 | break; |
1775 | case "Behavior": | 1775 | case "Behavior": |
1776 | var behaviorString = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1776 | var behaviorString = this.Core.GetAttributeValue(sourceLineNumbers, attrib); |
1777 | if (!Enum.TryParse(behaviorString, true, out behavior)) | 1777 | switch (behaviorString) |
1778 | { | 1778 | { |
1779 | this.Core.Write(ErrorMessages.IllegalAttributeValueWithLegalList(sourceLineNumbers, node.Name.LocalName, "Behavior", behaviorString, "success, error, scheduleReboot, forceReboot")); | 1779 | case "error": |
1780 | behavior = ExitCodeBehaviorType.Error; | ||
1781 | break; | ||
1782 | case "forceReboot": | ||
1783 | behavior = ExitCodeBehaviorType.ForceReboot; | ||
1784 | break; | ||
1785 | case "scheduleReboot": | ||
1786 | behavior = ExitCodeBehaviorType.ScheduleReboot; | ||
1787 | break; | ||
1788 | case "success": | ||
1789 | behavior = ExitCodeBehaviorType.Success; | ||
1790 | break; | ||
1791 | default: | ||
1792 | this.Core.Write(ErrorMessages.IllegalAttributeValueWithLegalList(sourceLineNumbers, node.Name.LocalName, "Behavior", behaviorString, "success, error, scheduleReboot, forceReboot")); | ||
1793 | behavior = ExitCodeBehaviorType.Success; // set value to avoid ExpectedAttribute below. | ||
1794 | break; | ||
1780 | } | 1795 | } |
1781 | break; | 1796 | break; |
1782 | default: | 1797 | default: |