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 /src | |
| parent | d085e938317c80f62a3b484d20ed1a6cf89bb59d (diff) | |
| download | wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.tar.gz wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.tar.bz2 wix-643a5c5db1da6fb68fdc353bbbdbecaa1964425e.zip | |
Fix parsing Behavior in ExitCode element.
Diffstat (limited to 'src')
| -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: |
