FLEX-35141 fix XML literal handling'

Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/38ca9c95
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/38ca9c95
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/38ca9c95

Branch: refs/heads/feature-autobuild/maven-archetypes
Commit: 38ca9c957e01df7de9eba07b33eb3a62b6da7877
Parents: bb4cbcf
Author: Alex Harui <aha...@apache.org>
Authored: Thu Oct 13 09:05:37 2016 -0700
Committer: Alex Harui <aha...@apache.org>
Committed: Thu Oct 13 09:05:37 2016 -0700

----------------------------------------------------------------------
 .../compiler/internal/codegen/js/jx/LiteralEmitter.java     | 2 +-
 .../internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java | 9 +++++++++
 2 files changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/38ca9c95/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
----------------------------------------------------------------------
diff --git 
a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
 
b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
index 1be3b1e..d3fc55d 100644
--- 
a/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
+++ 
b/compiler-jx/src/main/java/org/apache/flex/compiler/internal/codegen/js/jx/LiteralEmitter.java
@@ -91,7 +91,7 @@ public class LiteralEmitter extends JSSubEmitter implements
                                        else
                                                sb.append(s);
                                }
-                                       inAttribute = s.equals("=");
+                                       inAttribute = s.endsWith("=");
                        }
                        s = sb.toString();
                }

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/38ca9c95/compiler-jx/src/test/java/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java
----------------------------------------------------------------------
diff --git 
a/compiler-jx/src/test/java/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java
 
b/compiler-jx/src/test/java/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java
index 291368d..2527073 100644
--- 
a/compiler-jx/src/test/java/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java
+++ 
b/compiler-jx/src/test/java/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSGlobalClasses.java
@@ -355,6 +355,15 @@ public class TestFlexJSGlobalClasses extends 
TestGoogGlobalClasses
     }
     
     @Test
+    public void testXMLLiteralWithTemplateAndParams()
+    {
+        VariableNode node = (VariableNode)getNode("private function 
test(attributevalue:String) { var a:XML = <name attributeName={attributevalue} 
/>;}",
+                                                                
VariableNode.class, WRAP_LEVEL_CLASS);
+        asBlockWalker.visitVariable(node);
+        assertOut("var /** @type {XML} */ a = new XML( '<name attributeName=' 
+ '\"' + attributevalue + '\"' + ' />')");
+    }
+    
+    @Test
     public void testXMLLiteralWithTemplateExpression()
     {
         VariableNode node = (VariableNode)getNode("private function get 
tagname():String { return 'name'; };\n" +

Reply via email to