diff options
author | aclement <aclement> | 2006-06-08 08:30:08 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-06-08 08:30:08 +0000 |
commit | 39bc21c734ee42b99644f30b78ec0f135483e414 (patch) | |
tree | 1fad1172f57ba359b7d001e5a2ad4a91cfab661a /weaver/src | |
parent | afe41a56ebf6c0dcbe69285a263f0e5739d58028 (diff) | |
download | aspectj-39bc21c734ee42b99644f30b78ec0f135483e414.tar.gz aspectj-39bc21c734ee42b99644f30b78ec0f135483e414.zip |
fix for 145950
Diffstat (limited to 'weaver/src')
-rw-r--r-- | weaver/src/org/aspectj/weaver/bcel/LazyClassGen.java | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/weaver/src/org/aspectj/weaver/bcel/LazyClassGen.java b/weaver/src/org/aspectj/weaver/bcel/LazyClassGen.java index 80c7a53bf..085a83e7f 100644 --- a/weaver/src/org/aspectj/weaver/bcel/LazyClassGen.java +++ b/weaver/src/org/aspectj/weaver/bcel/LazyClassGen.java @@ -1299,17 +1299,12 @@ public final class LazyClassGen { // and if one of them is missing we fail, and it's not worth failing just to put out // a warning message! private boolean implementsSerializable(ResolvedType aType) { + if (aType.getSignature().equals(UnresolvedType.SERIALIZABLE.getSignature())) return true; + ResolvedType[] interfaces = aType.getDeclaredInterfaces(); for (int i = 0; i < interfaces.length; i++) { - if (interfaces[i].getSignature().equals(UnresolvedType.SERIALIZABLE.getSignature())) { - return true; - } else { - if (interfaces[i].isMissing()) continue; - ResolvedType superInterface = interfaces[i].getSuperclass(); - if (superInterface != null && !superInterface.isMissing()) { - if (implementsSerializable(superInterface)) return true; - } - } + if (interfaces[i].isMissing()) continue; + if (implementsSerializable(interfaces[i])) return true; } ResolvedType superType = aType.getSuperclass(); if (superType != null && !superType.isMissing()) { |