You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ah...@apache.org on 2020/01/23 01:13:56 UTC

[royale-compiler] branch develop updated: handle multiline XML literals

This is an automated email from the ASF dual-hosted git repository.

aharui pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-compiler.git


The following commit(s) were added to refs/heads/develop by this push:
     new 722ab5a  handle multiline XML literals
722ab5a is described below

commit 722ab5ade08d7f60438ed7644e996618087f073b
Author: Alex Harui <ah...@apache.org>
AuthorDate: Wed Jan 22 17:13:43 2020 -0800

    handle multiline XML literals
---
 .../royale/compiler/internal/codegen/js/jx/LiteralEmitter.java      | 6 +++++-
 .../internal/codegen/js/royale/TestRoyaleGlobalClasses.java         | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/LiteralEmitter.java b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/LiteralEmitter.java
index 983e541..8a83b84 100644
--- a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/LiteralEmitter.java
+++ b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/js/jx/LiteralEmitter.java
@@ -155,7 +155,11 @@ public class LiteralEmitter extends JSSubEmitter implements
                                     +")";
                             
                         }
-	                    else s = "new " + getEmitter().formatQualifiedName("XML") + "( " + s + ")";
+	                    else {
+		                    newlineReplacement = "\\\\n";
+	                        s = s.replaceAll("\r", "");
+	                    	s = "new " + getEmitter().formatQualifiedName("XML") + "( " + s + ")";
+	                    }
 	                }
                 }
                 else
diff --git a/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyaleGlobalClasses.java b/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyaleGlobalClasses.java
index 054a067..1d5d153 100644
--- a/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyaleGlobalClasses.java
+++ b/compiler-jx/src/test/java/org/apache/royale/compiler/internal/codegen/js/royale/TestRoyaleGlobalClasses.java
@@ -845,7 +845,7 @@ public class TestRoyaleGlobalClasses extends TestGoogGlobalClasses
     {
         IVariableNode node = getVariable("var a:XML = <top attr1='cat'>\n<child attr2='dog'>\n<grandchild attr3='fish'>text</grandchild>\n</child>\n</top>");
         asBlockWalker.visitVariable(node);
-        assertOut("var /** @type {XML} */ a = new XML( \"<top attr1='cat'>\\\n<child attr2='dog'>\\\n<grandchild attr3='fish'>text</grandchild>\\\n</child>\\\n</top>\")");
+        assertOut("var /** @type {XML} */ a = new XML( \"<top attr1='cat'>\\n<child attr2='dog'>\\n<grandchild attr3='fish'>text</grandchild>\\n</child>\\n</top>\")");
     }
     
     @Test