Skip to content

Commit 9f79f73

Browse files
committed
[GR-47041] Follow OptimizedCallTarget package rename in isCallBoundary()
1 parent 315e774 commit 9f79f73

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

src/main/java/org/truffleruby/language/backtrace/BacktraceInterleaver.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,16 @@ public static List<String> interleave(List<String> rubyBacktrace, StackTraceElem
5050
return interleaved;
5151
}
5252

53+
5354
public static boolean isCallBoundary(StackTraceElement element) {
54-
return (element.getClassName().equals("org.graalvm.compiler.truffle.runtime.OptimizedCallTarget") &&
55-
element.getMethodName().equals("executeRootNode")) ||
56-
(element.getClassName().equals("com.oracle.truffle.api.impl.DefaultCallTarget") &&
57-
element.getMethodName().startsWith("call"));
55+
// GR-47041: we need com.oracle.truffle.api.impl.Accessor.RuntimeSupport.isGuestCallStackFrame but it's not public
56+
String className = element.getClassName();
57+
String methodName = element.getMethodName();
58+
return ((className.equals("com.oracle.truffle.runtime.OptimizedCallTarget") ||
59+
className.equals("org.graalvm.compiler.truffle.runtime.OptimizedCallTarget")) &&
60+
methodName.equals("executeRootNode")) ||
61+
(className.equals("com.oracle.truffle.api.impl.DefaultCallTarget") &&
62+
methodName.equals("callDirectOrIndirect"));
5863
}
5964

6065
private static boolean isIntoRuby(StackTraceElement[] elements, int index) {

0 commit comments

Comments
 (0)