diff options
author | Andy Clement <aclement@pivotal.io> | 2015-12-07 16:09:21 -0800 |
---|---|---|
committer | Andy Clement <aclement@pivotal.io> | 2015-12-07 16:09:21 -0800 |
commit | 9b220fe52ad9bb117140692f7cf455d78a17be11 (patch) | |
tree | ce23dc140c29757076179aab81b925c5fcdc9a29 /org.aspectj.matcher | |
parent | f4095941510acb644e66cd77a5d1936643bafe90 (diff) | |
download | aspectj-9b220fe52ad9bb117140692f7cf455d78a17be11.tar.gz aspectj-9b220fe52ad9bb117140692f7cf455d78a17be11.zip |
482945: obfuscated class file finding outer class
Diffstat (limited to 'org.aspectj.matcher')
-rw-r--r-- | org.aspectj.matcher/src/org/aspectj/weaver/AbstractReferenceTypeDelegate.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/AbstractReferenceTypeDelegate.java b/org.aspectj.matcher/src/org/aspectj/weaver/AbstractReferenceTypeDelegate.java index f73504927..46f12c04e 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/AbstractReferenceTypeDelegate.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/AbstractReferenceTypeDelegate.java @@ -107,9 +107,13 @@ public abstract class AbstractReferenceTypeDelegate implements ReferenceTypeDele List<GenericSignature.FormalTypeParameter> typeParameters = new ArrayList<GenericSignature.FormalTypeParameter>(); ResolvedType outerClassType = getOuterClass(); if (!(outerClassType instanceof ReferenceType)) { - throw new BCException("Whilst processing type '" + this.resolvedTypeX.getSignature() - + "' - cannot cast the outer type to a reference type. Signature=" + outerClassType.getSignature() - + " toString()=" + outerClassType.toString()); + if (outerClassType == null) { + return GenericSignature.FormalTypeParameter.NONE; + } else { + throw new BCException("Whilst processing type '" + this.resolvedTypeX.getSignature() + + "' - cannot cast the outer type to a reference type. Signature=" + outerClassType.getSignature() + + " toString()=" + outerClassType.toString()); + } } ReferenceType outer = (ReferenceType) outerClassType; ReferenceTypeDelegate outerDelegate = outer.getDelegate(); |