Kaynağa Gözat

Fix 525972 - java.lang.ArrayIndexOutOfBoundsException: 2 (at org.aspectj.weaver.ResolvedType.getMemberParameterizationMap(ResolvedType.java:970))

tags/V1_9_0_RC3
Andy Clement 6 yıl önce
ebeveyn
işleme
c3142b62c0

+ 28
- 2
org.aspectj.matcher/src/org/aspectj/weaver/ResolvedType.java Dosyayı Görüntüle

} }
TypeVariable[] tvs = getGenericType().getTypeVariables(); TypeVariable[] tvs = getGenericType().getTypeVariables();
Map<String, UnresolvedType> parameterizationMap = new HashMap<String, UnresolvedType>(); Map<String, UnresolvedType> parameterizationMap = new HashMap<String, UnresolvedType>();
for (int i = 0; i < tvs.length; i++) {
parameterizationMap.put(tvs[i].getName(), typeParameters[i]);
if (tvs.length != typeParameters.length) {
world.getMessageHandler()
.handleMessage(
new Message("Mismatch when building parameterization map. For type '" + this.signature +
"' expecting "+tvs.length+":["+toString(tvs)+"] type parameters but found "+typeParameters.length+
":["+toString(typeParameters)+"]", "",
IMessage.ERROR, getSourceLocation(), null,
new ISourceLocation[] { getSourceLocation() }));
} else {
for (int i = 0; i < tvs.length; i++) {
parameterizationMap.put(tvs[i].getName(), typeParameters[i]);
}
} }
return parameterizationMap; return parameterizationMap;
} }


private String toString(UnresolvedType[] typeParameters) {
StringBuilder s = new StringBuilder();
for (UnresolvedType tv: typeParameters) {
s.append(tv.getSignature()).append(" ");
}
return s.toString().trim();
}

private String toString(TypeVariable[] tvs) {
StringBuilder s = new StringBuilder();
for (TypeVariable tv: tvs) {
s.append(tv.getName()).append(" ");
}
return s.toString().trim();
}

public List<ShadowMunger> getDeclaredAdvice() { public List<ShadowMunger> getDeclaredAdvice() {
List<ShadowMunger> l = new ArrayList<ShadowMunger>(); List<ShadowMunger> l = new ArrayList<ShadowMunger>();
ResolvedMember[] methods = getDeclaredMethods(); ResolvedMember[] methods = getDeclaredMethods();

Loading…
İptal
Kaydet