From 704f8d144681102d84bea1e0d8c678eef6fd99b2 Mon Sep 17 00:00:00 2001 From: Natalia Ukhorskaya Date: Mon, 22 Dec 2014 18:13:06 +0300 Subject: [PATCH] Debugger: use intellij method to invoke method (should mute breakpoint during invocation) --- .../render/KotlinClassWithDelegatedPropertyRenderer.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt b/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt index 03324a8bb56..1c337c1ed24 100644 --- a/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt +++ b/idea/src/org/jetbrains/jet/plugin/debugger/render/KotlinClassWithDelegatedPropertyRenderer.kt @@ -37,6 +37,7 @@ import com.sun.jdi.InvocationException import com.sun.jdi.Method import org.jetbrains.jet.codegen.PropertyCodegen import org.jetbrains.jet.lang.resolve.name.Name +import com.intellij.debugger.engine.evaluation.EvaluateException public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() { @@ -76,10 +77,10 @@ public class KotlinClassWithDelegatedPropertyRenderer : ClassRenderer() { val threadReference = context.getSuspendContext().getThread()?.getThreadReference() if (method != null && threadReference != null) { val propValue = try { - value.invokeMethod(threadReference, method, listOf(), context.getSuspendContext().getSuspendPolicy()) + context.getDebugProcess().invokeInstanceMethod(context, value, method, listOf(), context.getSuspendContext().getSuspendPolicy()) } - catch(e: InvocationException) { - e.exception() + catch(e: EvaluateException) { + e.getExceptionFromTargetVM() } if (propValue != null) { val delegatedPropertyDescriptor = DelegatedPropertyFieldDescriptor(