From 7c86eee7c4b76c5385836ede5413c756ab3e87d0 Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Fri, 26 Feb 2016 12:17:47 +0100 Subject: [PATCH] store firstSyntheticSuspendProcessed flag per VM --- platform/script-debugger/backend/src/Vm.kt | 5 +++-- platform/script-debugger/backend/src/VmBase.kt | 6 ++++-- .../src/org/jetbrains/debugger/DebugProcessImpl.kt | 4 ++++ 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/platform/script-debugger/backend/src/Vm.kt b/platform/script-debugger/backend/src/Vm.kt index 1bbea2b39a3a..3bb9257d872c 100644 --- a/platform/script-debugger/backend/src/Vm.kt +++ b/platform/script-debugger/backend/src/Vm.kt @@ -1,5 +1,5 @@ /* - * Copyright 2000-2015 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,6 +15,7 @@ */ package org.jetbrains.debugger +import com.intellij.openapi.util.UserDataHolderEx import org.jetbrains.concurrency.resolvedPromise interface AttachStateManager { @@ -24,7 +25,7 @@ interface AttachStateManager { get() = true } -interface Vm { +interface Vm : UserDataHolderEx { val debugListener: DebugEventListener val attachStateManager: AttachStateManager diff --git a/platform/script-debugger/backend/src/VmBase.kt b/platform/script-debugger/backend/src/VmBase.kt index ba48683f4def..41b374b46ff8 100644 --- a/platform/script-debugger/backend/src/VmBase.kt +++ b/platform/script-debugger/backend/src/VmBase.kt @@ -1,5 +1,5 @@ /* - * Copyright 2000-2015 JetBrains s.r.o. + * Copyright 2000-2016 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,7 +15,9 @@ */ package org.jetbrains.debugger -abstract class VmBase(override val debugListener: DebugEventListener) : Vm, AttachStateManager { +import com.intellij.openapi.util.UserDataHolderBase + +abstract class VmBase(override val debugListener: DebugEventListener) : Vm, AttachStateManager, UserDataHolderBase() { override val evaluateContext by lazy(LazyThreadSafetyMode.NONE) { computeEvaluateContext() } override val attachStateManager: AttachStateManager = this diff --git a/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/DebugProcessImpl.kt b/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/DebugProcessImpl.kt index c968cf39ffa8..a46a8a39ecf8 100644 --- a/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/DebugProcessImpl.kt +++ b/platform/script-debugger/debugger-ui/src/org/jetbrains/debugger/DebugProcessImpl.kt @@ -181,6 +181,10 @@ abstract class DebugProcessImpl>(session: XDebugSession, urlToFileCache.putIfAbsent(url, file) } + // go plugin compatibility + @Suppress("unused") + open fun getLocationsForBreakpoint(breakpoint: XLineBreakpoint<*>): List = getLocationsForBreakpoint(vm!!, breakpoint) + open fun getLocationsForBreakpoint(vm: Vm, breakpoint: XLineBreakpoint<*>): List = throw UnsupportedOperationException() override fun isLibraryFrameFilterSupported() = true