diff --git a/org.ntlab.reverseDebugger/src/org/ntlab/reverseDebugger/JavaEditorOperator.java b/org.ntlab.reverseDebugger/src/org/ntlab/reverseDebugger/JavaEditorOperator.java index 909b696..31d229a 100644 --- a/org.ntlab.reverseDebugger/src/org/ntlab/reverseDebugger/JavaEditorOperator.java +++ b/org.ntlab.reverseDebugger/src/org/ntlab/reverseDebugger/JavaEditorOperator.java @@ -94,10 +94,12 @@ private String getLoaderPath(JDIInstanceMethodCaller meCaller, StringReference declaringClassName) throws InvalidTypeException, ClassNotLoadedException, InvocationException, IncompatibleThreadStateException { - ObjectReference classInfo = (ObjectReference)meCaller.callStaticMethod(TRACE, "TraceJSON", "getClassInfo", declaringClassName); + ObjectReference getInstance = (ObjectReference)meCaller.callStaticMethod(TRACE, "TraceJSON", "getInstance"); + JDIInstanceMethodCaller TraceInstanceCaller = new JDIInstanceMethodCaller(meCaller.getVm(), meCaller.getThread(), getInstance); + ObjectReference classInfo = (ObjectReference)TraceInstanceCaller.callInstanceMethod("getClassInfo", declaringClassName); if (classInfo == null) { declaringClassName = (StringReference)meCaller.callInstanceMethod("getThisClassName"); - classInfo = (ObjectReference)meCaller.callStaticMethod(TRACE, "TraceJSON", "getClassInfo", declaringClassName); + classInfo = (ObjectReference)TraceInstanceCaller.callInstanceMethod("getClassInfo", declaringClassName); } String loaderPath = null; if (classInfo != null) {