aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core/Compiler_UI.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core/Compiler_UI.cs')
-rw-r--r--src/WixToolset.Core/Compiler_UI.cs38
1 files changed, 33 insertions, 5 deletions
diff --git a/src/WixToolset.Core/Compiler_UI.cs b/src/WixToolset.Core/Compiler_UI.cs
index 19c2fdcc..0b5b3980 100644
--- a/src/WixToolset.Core/Compiler_UI.cs
+++ b/src/WixToolset.Core/Compiler_UI.cs
@@ -666,6 +666,7 @@ namespace WixToolset.Core
666 { 666 {
667 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 667 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
668 string action = null; 668 string action = null;
669 string message = null;
669 string template = null; 670 string template = null;
670 671
671 foreach (var attrib in node.Attributes()) 672 foreach (var attrib in node.Attributes())
@@ -677,6 +678,9 @@ namespace WixToolset.Core
677 case "Action": 678 case "Action":
678 action = this.Core.GetAttributeValue(sourceLineNumbers, attrib); 679 action = this.Core.GetAttributeValue(sourceLineNumbers, attrib);
679 break; 680 break;
681 case "Message":
682 message = this.Core.GetAttributeValue(sourceLineNumbers, attrib);
683 break;
680 case "Template": 684 case "Template":
681 template = this.Core.GetAttributeValue(sourceLineNumbers, attrib); 685 template = this.Core.GetAttributeValue(sourceLineNumbers, attrib);
682 break; 686 break;
@@ -696,6 +700,11 @@ namespace WixToolset.Core
696 this.Core.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Action")); 700 this.Core.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Action"));
697 } 701 }
698 702
703 if (null == message)
704 {
705 message = Common.GetInnerText(node);
706 }
707
699 this.Core.ParseForExtensionElements(node); 708 this.Core.ParseForExtensionElements(node);
700 709
701 if (!this.Core.EncounteredError) 710 if (!this.Core.EncounteredError)
@@ -703,7 +712,7 @@ namespace WixToolset.Core
703 this.Core.AddTuple(new ActionTextTuple(sourceLineNumbers) 712 this.Core.AddTuple(new ActionTextTuple(sourceLineNumbers)
704 { 713 {
705 Action = action, 714 Action = action,
706 Description = Common.GetInnerText(node), 715 Description = message,
707 Template = template, 716 Template = template,
708 }); 717 });
709 } 718 }
@@ -728,6 +737,9 @@ namespace WixToolset.Core
728 case "Id": 737 case "Id":
729 id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib); 738 id = this.Core.GetAttributeIdentifier(sourceLineNumbers, attrib);
730 break; 739 break;
740 case "Value":
741 text = this.Core.GetAttributeValue(sourceLineNumbers, attrib);
742 break;
731 default: 743 default:
732 this.Core.UnexpectedAttribute(node, attrib); 744 this.Core.UnexpectedAttribute(node, attrib);
733 break; 745 break;
@@ -739,7 +751,10 @@ namespace WixToolset.Core
739 } 751 }
740 } 752 }
741 753
742 text = Common.GetInnerText(node); 754 if (null == text)
755 {
756 text = Common.GetInnerText(node);
757 }
743 758
744 if (null == id) 759 if (null == id)
745 { 760 {
@@ -1406,6 +1421,9 @@ namespace WixToolset.Core
1406 case "SourceFile": 1421 case "SourceFile":
1407 sourceFile = this.Core.GetAttributeValue(childSourceLineNumbers, attrib); 1422 sourceFile = this.Core.GetAttributeValue(childSourceLineNumbers, attrib);
1408 break; 1423 break;
1424 case "Value":
1425 text = this.Core.GetAttributeValue(childSourceLineNumbers, attrib);
1426 break;
1409 default: 1427 default:
1410 this.Core.UnexpectedAttribute(child, attrib); 1428 this.Core.UnexpectedAttribute(child, attrib);
1411 break; 1429 break;
@@ -1417,10 +1435,14 @@ namespace WixToolset.Core
1417 } 1435 }
1418 } 1436 }
1419 1437
1420 text = Common.GetInnerText(child); 1438 if (null == text)
1439 {
1440 text = Common.GetInnerText(child);
1441 }
1442
1421 if (!String.IsNullOrEmpty(text) && null != sourceFile) 1443 if (!String.IsNullOrEmpty(text) && null != sourceFile)
1422 { 1444 {
1423 this.Core.Write(ErrorMessages.IllegalAttributeWithInnerText(childSourceLineNumbers, child.Name.LocalName, "SourceFile")); 1445 this.Core.Write(ErrorMessages.IllegalAttributeWithOtherAttribute(childSourceLineNumbers, child.Name.LocalName, "SourceFile", "Text"));
1424 } 1446 }
1425 break; 1447 break;
1426 default: 1448 default:
@@ -1589,6 +1611,9 @@ namespace WixToolset.Core
1589 { 1611 {
1590 switch (attrib.Name.LocalName) 1612 switch (attrib.Name.LocalName)
1591 { 1613 {
1614 case "Condition":
1615 condition = this.Core.GetAttributeValue(sourceLineNumbers, attrib);
1616 break;
1592 case "Control": 1617 case "Control":
1593 if (null != control) 1618 if (null != control)
1594 { 1619 {
@@ -1627,7 +1652,10 @@ namespace WixToolset.Core
1627 } 1652 }
1628 } 1653 }
1629 1654
1630 condition = this.Core.GetConditionInnerText(node); 1655 if (null == condition)
1656 {
1657 condition = this.Core.GetConditionInnerText(node);
1658 }
1631 1659
1632 if (null == control) 1660 if (null == control)
1633 { 1661 {