]> source.dussan.org Git - aspectj.git/commitdiff
overweaving and tjp
authoraclement <aclement>
Thu, 13 May 2010 17:21:55 +0000 (17:21 +0000)
committeraclement <aclement>
Thu, 13 May 2010 17:21:55 +0000 (17:21 +0000)
weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java

index 1bef5f9684bc38b819c67f68e69f47bcbf9c3a95..547f0ad7d5def6f5e07854ad3774b422031ea00f 100644 (file)
@@ -3048,8 +3048,11 @@ class BcelClassWeaver implements IClassWeaver {
                                if (world.isOverWeaving()) {
                                        String s = invoke.getClassName(mg.getConstantPool());
                                        // skip all the inc/dec/isValid/etc
-                                       if (s.equals("org.aspectj.runtime.internal.CFlowCounter")
-                                                       || s.equals("org.aspectj.runtime.internal.CFlowStack")) {
+                                       if (s.length() > 4
+                                                       && s.charAt(4) == 'a'
+                                                       && (s.equals("org.aspectj.runtime.internal.CFlowCounter")
+                                                                       || s.equals("org.aspectj.runtime.internal.CFlowStack") || s
+                                                                       .equals("org.aspectj.runtime.reflect.Factory"))) {
                                                proceed = false;
                                        } else {
                                                if (methodName.equals("aspectOf")) {