# HG changeset patch # User Doug Simon # Date 1424356957 -3600 # Node ID 017eb83853ddb1cf21ce7784bc255b20f0ad400a # Parent 16ad9711b44f3bcc089a4e5899171cd684a354ad fixed npe when the target class of optional method substitutions is not present diff -r 16ad9711b44f -r 017eb83853dd graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsImpl.java --- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsImpl.java Thu Feb 19 15:40:17 2015 +0100 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/ReplacementsImpl.java Thu Feb 19 15:42:37 2015 +0100 @@ -114,12 +114,14 @@ } String originalName = originalName(substituteMethod, methodSubstitution.value()); JavaSignature originalSignature = originalSignature(substituteMethod, methodSubstitution.signature(), methodSubstitution.isStatic()); - Executable[] originalMethods = originalMethods(classSubstitution, methodSubstitution.optional(), originalName, originalSignature); - for (Executable originalMethod : originalMethods) { - if (originalMethod != null && (guard == null || guard.execute())) { - ResolvedJavaMethod original = registerMethodSubstitution(this, originalMethod, substituteMethod); - if (original != null && methodSubstitution.forced() && shouldIntrinsify(original)) { - forcedSubstitutions.add(original); + Executable[] originalMethods = originalMethods(classSubstitution, classSubstitution.optional(), originalName, originalSignature); + if (originalMethods != null) { + for (Executable originalMethod : originalMethods) { + if (originalMethod != null && (guard == null || guard.execute())) { + ResolvedJavaMethod original = registerMethodSubstitution(this, originalMethod, substituteMethod); + if (original != null && methodSubstitution.forced() && shouldIntrinsify(original)) { + forcedSubstitutions.add(original); + } } } }