@@ -904,7 +904,7 @@ private SootMethod resolveMethod(final SootClass baseType, final SootClass decla
904
904
// determining the most specific super interface
905
905
HashSet <SootClass > interfaceIgnoreList = new HashSet <>();
906
906
for (SootClass concreteType = baseType ; concreteType != null ;) {
907
- Queue <SootClass > worklist = new LinkedList <>(concreteType .getInterfaces ());
907
+ Queue <SootClass > worklist = new ArrayDeque <>(concreteType .getInterfaces ());
908
908
// we have to determine the "most specific super interface"
909
909
while (!worklist .isEmpty ()) {
910
910
SootClass iFace = worklist .poll ();
@@ -978,14 +978,15 @@ private SootMethod getSignaturePolymorphicMethod(SootClass concreteType, String
978
978
if (concreteType == null ) {
979
979
throw new RuntimeException ("The concreteType cannot not be null!" );
980
980
}
981
+ boolean isDotNet = Options .v ().src_prec () == Options .src_prec_dotnet ;
981
982
SootMethod candidate = null ;
982
983
for (SootMethod method : concreteType .getMethodsByNameAndParamCount (name , parameterTypes .size ())) {
983
984
if (method .getParameterTypes ().equals (parameterTypes ) && canStoreType (method .getReturnType (), returnType )) {
984
985
candidate = method ;
985
986
returnType = method .getReturnType ();
986
987
}
987
988
// if dotnet structs or generics
988
- if (Options . v (). src_prec () == Options . src_prec_dotnet ) {
989
+ if (isDotNet ) {
989
990
if (method .getParameterCount () == parameterTypes .size () && canStoreType (returnType , method .getReturnType ())) {
990
991
boolean canStore = true ;
991
992
for (int i = 0 ; i < method .getParameterCount (); i ++) {
0 commit comments