fix SWFOverride 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/ff178488
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/ff178488
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/ff178488

Branch: refs/heads/master
Commit: ff178488cdce68ca46fa3b7aa91d180b5bbd0e61
Parents: 2f5a375
Author: Alex Harui <[email protected]>
Authored: Tue May 30 12:49:42 2017 -0700
Committer: Alex Harui <[email protected]>
Committed: Tue May 30 12:49:49 2017 -0700

----------------------------------------------------------------------
 .../org/apache/flex/compiler/internal/targets/SWFTarget.java  | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/ff178488/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java
----------------------------------------------------------------------
diff --git 
a/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java
 
b/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java
index 06f932a..144ba5f 100644
--- 
a/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java
+++ 
b/compiler/src/main/java/org/apache/flex/compiler/internal/targets/SWFTarget.java
@@ -443,6 +443,9 @@ public abstract class SWFTarget extends Target implements 
ISWFTarget
                                                {
                                                        String methodName = 
method.getMethodName();
                                                        if (methodName == null) 
continue;
+                                                       // match getter with 
getter methodInfo
+                                                       if (trait.isGetter() && 
method.getReturnType().getBaseName().equals(IASLanguageConstants.void_)) 
continue;
+                                                       if (trait.isSetter() && 
(!method.getReturnType().getBaseName().equals(IASLanguageConstants.void_))) 
continue;
                                                        if 
(methodName.equals(trait.getName().getBaseName()))
                                                        {
                                                                String[] keys = 
meta.getKeys();
@@ -479,7 +482,6 @@ public abstract class SWFTarget extends Target implements 
ISWFTarget
                                                                                
        method.setReturnType(name);
                                                                                
        foundName = true;
                                                                                
        changedABC = true;
-                                                                               
        break metas;
                                                                                
        }
                                                                                
}
                                                                                
if (!foundName)
@@ -494,7 +496,6 @@ public abstract class SWFTarget extends Target implements 
ISWFTarget
                                                                                
        namePool.add(name);
                                                                                
        method.setReturnType(name);
                                                                                
        changedABC = true;
-                                                                               
break metas;
                                                                                
}
                                                                        }
                                                                        else if 
(keys[i].equals(IMetaAttributeConstants.NAME_SWFOVERRIDE_PARAMS))
@@ -556,9 +557,9 @@ public abstract class SWFTarget extends Target implements 
ISWFTarget
                                                                                
        }
                                                                                
}
                                                                                
method.setParamTypes(newList);
-                                                                               
break metas;
                                                                        }
                                                                }
+                                                               break metas;
                                                        }
                                                }
                                                        }

Reply via email to