mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
EA-209321 - assert: StackFrameProxyImpl.thisObject
GitOrigin-RevId: b707273bd1f1003c7144fa9bfa3faf4c1f5972dc
This commit is contained in:
committed by
intellij-monorepo-bot
parent
2b0a160b8a
commit
bca302e19b
@@ -159,7 +159,6 @@ public class JavaStackFrame extends XStackFrame implements JVMStackFrameInfoProv
|
||||
protected XNamedValue createThisNode(EvaluationContextImpl evaluationContext) {
|
||||
ObjectReference thisObjectReference = myDescriptor.getThisObject();
|
||||
if (thisObjectReference != null) {
|
||||
myDescriptor.putUserData(BreakpointIntentionAction.THIS_TYPE_KEY, thisObjectReference.type().name());
|
||||
return JavaValue.create(myNodeManager.getThisDescriptor(null, thisObjectReference), evaluationContext, myNodeManager);
|
||||
}
|
||||
return null;
|
||||
|
||||
+5
-2
@@ -1,4 +1,4 @@
|
||||
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.debugger.ui.breakpoints
|
||||
|
||||
import com.intellij.debugger.InstanceFilter
|
||||
@@ -131,6 +131,9 @@ internal abstract class BreakpointIntentionAction(protected val myBreakpoint: XB
|
||||
@JvmField
|
||||
val THIS_TYPE_KEY = Key.create<String>("THIS_TYPE_KEY")
|
||||
|
||||
@JvmField
|
||||
val THIS_ID_KEY = Key.create<Long>("THIS_ID_KEY")
|
||||
|
||||
@JvmStatic
|
||||
fun getIntentions(breakpoint: XBreakpoint<*>, currentSession: XDebugSession?): List<AnAction> {
|
||||
val process = currentSession?.debugProcess
|
||||
@@ -146,7 +149,7 @@ internal abstract class BreakpointIntentionAction(protected val myBreakpoint: XB
|
||||
res.add(AddClassNotFilter(breakpoint, it))
|
||||
}
|
||||
|
||||
frameDescriptor.thisObject?.uniqueID()?.let {
|
||||
frameDescriptor.getUserData(THIS_ID_KEY)?.let {
|
||||
res.add(AddInstanceFilter(breakpoint, it))
|
||||
}
|
||||
|
||||
|
||||
+5
@@ -8,6 +8,7 @@ import com.intellij.debugger.engine.evaluation.EvaluationContextImpl;
|
||||
import com.intellij.debugger.impl.DebuggerUtilsEx;
|
||||
import com.intellij.debugger.jdi.StackFrameProxyImpl;
|
||||
import com.intellij.debugger.settings.ThreadsViewSettings;
|
||||
import com.intellij.debugger.ui.breakpoints.BreakpointIntentionAction;
|
||||
import com.intellij.debugger.ui.tree.StackFrameDescriptor;
|
||||
import com.intellij.debugger.ui.tree.render.DescriptorLabelListener;
|
||||
import com.intellij.icons.AllIcons;
|
||||
@@ -222,6 +223,10 @@ public class StackFrameDescriptorImpl extends NodeDescriptorImpl implements Stac
|
||||
} catch (EvaluateException e) {
|
||||
LOG.info(e);
|
||||
}
|
||||
if (myThisObject != null) {
|
||||
putUserData(BreakpointIntentionAction.THIS_ID_KEY, myThisObject.uniqueID());
|
||||
putUserData(BreakpointIntentionAction.THIS_TYPE_KEY, myThisObject.type().name());
|
||||
}
|
||||
}
|
||||
return myThisObject;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user