فهرست منبع

Fix XML parse error if single curly brace encountered at the end of a data binding string literal (#459)

Maximilian Stark 2 سال پیش
والد
کامیت
9775bcb2b3
2فایلهای تغییر یافته به همراه2 افزوده شده و 1 حذف شده
  1. 1 1
      Source/Core/XMLParseTools.cpp
  2. 1 0
      Tests/Source/UnitTests/DataBinding.cpp

+ 1 - 1
Source/Core/XMLParseTools.cpp

@@ -165,7 +165,7 @@ const char* XMLParseTools::ParseDataBrackets(bool& inside_brackets, bool& inside
 			else if (c == '{' && previous == '{')
 				return "Nested double curly brackets are illegal.";
 
-			else if (previous == '}' && c != '}')
+			else if (previous == '}' && c != '}' && c != '\'')
 				return "Single closing curly bracket encountered, use double curly brackets to close an expression.";
 
 			else if (previous == '/' && c == '>')

+ 1 - 0
Tests/Source/UnitTests/DataBinding.cpp

@@ -143,6 +143,7 @@ static const String inside_string_rml = R"(
 <p>before {{ 'i{{test}}23' }} test</p>
 <p>a {{ 'i' }} b {{ 'j' }} c</p>
 <p>{{i0}}</p>
+<p>{{ 'i{}' }}</p>
 
 </div>
 </body>