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

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

commit 89949646f233f76a9ecf069088762525a0d6f2ce
Author: Josh Tynjala <[email protected]>
AuthorDate: Thu Jun 27 10:23:00 2019 -0700

    MXMLRoyalePublisher: small optimization to sortClosureFile()
---
 .../codegen/mxml/royale/MXMLRoyalePublisher.java   | 73 ++++++++++++----------
 1 file changed, 39 insertions(+), 34 deletions(-)

diff --git 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
index 80c6fba..6840385 100644
--- 
a/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
+++ 
b/compiler-jx/src/main/java/org/apache/royale/compiler/internal/codegen/mxml/royale/MXMLRoyalePublisher.java
@@ -619,23 +619,23 @@ public class MXMLRoyalePublisher extends JSGoogPublisher 
implements IJSPublisher
        for (String dep : deps)
        {
                int open = dep.indexOf("[");
-               int close = dep.indexOf("]");
+               int close = dep.indexOf("]", open + 1);
                        String list = dep.substring(open + 1, close);
                        String[] parts = list.split(",");
-                       ArrayList<String> provideds = new ArrayList<String>();
                        for (String part : parts)
                        {
                                part = part.trim();
-                               if (part.startsWith("'"))
-                                       part = part.substring(1, part.length() 
- 1);
-                               provideds.add(part);                            
        
+                if (part.startsWith("'"))
+                {
+                    part = part.substring(1, part.length() - 1);
+                }
+                if(part.equals(name))
+                {
+                    open = dep.indexOf("'");
+                    close = dep.indexOf("'", open + 1);
+                    return dep.substring(open + 1, close);    
+                }
                        }
-               if (provideds.contains(name))
-               {
-                       open = dep.indexOf("'");
-                       close = dep.indexOf("'", open + 1);
-                       return dep.substring(open + 1, close);                  
        
-               }
        }
        return null;
     }
@@ -645,35 +645,40 @@ public class MXMLRoyalePublisher extends JSGoogPublisher 
implements IJSPublisher
        for (String dep : deps)
        {
                int open = dep.indexOf("[");
-               int close = dep.indexOf("]");
+               int close = dep.indexOf("]", open + 1);
                        String list = dep.substring(open + 1, close);
                        String[] parts = list.split(",");
-                       ArrayList<String> provideds = new ArrayList<String>();
                        for (String part : parts)
                        {
                                part = part.trim();
-                               if (part.startsWith("'"))
-                                       part = part.substring(1, part.length() 
- 1);
-                               provideds.add(part);                            
        
+                if (part.startsWith("'"))
+                {
+                    part = part.substring(1, part.length() - 1);
+                }
+                
+                if(part.equals(name))
+                {
+                    open = dep.indexOf("[", close + 1);
+                    close = dep.indexOf("]", open + 1);
+                    if (open + 1 == close)
+                    {
+                        return null;
+                    }
+                    String list2 = dep.substring(open + 1, close);
+                    String[] parts2 = list2.split(",");
+                    ArrayList<String> reqs = new ArrayList<String>();
+                    for (String part2 : parts2)
+                    {
+                        part2 = part2.trim();
+                        if (part2.startsWith("'"))
+                        {
+                            part2 = part2.substring(1, part2.length() - 1);
+                        }
+                        reqs.add(part2);                               
+                    }
+                    return reqs;
+                }                              
                        }
-               if (provideds.contains(name))
-               {
-                       open = dep.indexOf("[", close + 1);
-                       close = dep.indexOf("]", open + 1);
-                       if (open + 1 == close)
-                               return null;
-                       String list2 = dep.substring(open + 1, close);
-                       String[] parts2 = list2.split(",");
-                       ArrayList<String> reqs = new ArrayList<String>();
-                       for (String part : parts2)
-                       {
-                               part = part.trim();
-                               if (part.startsWith("'"))
-                                       part = part.substring(1, part.length() 
- 1);
-                               reqs.add(part);                                 
-                       }
-                       return reqs;
-               }
        }
        return null;
     }    

Reply via email to