diff --git a/java/debugger/impl/src/com/intellij/debugger/jdi/StackFrameProxyImpl.java b/java/debugger/impl/src/com/intellij/debugger/jdi/StackFrameProxyImpl.java index d084c0308b72..cc0a18951971 100644 --- a/java/debugger/impl/src/com/intellij/debugger/jdi/StackFrameProxyImpl.java +++ b/java/debugger/impl/src/com/intellij/debugger/jdi/StackFrameProxyImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2015 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. @@ -84,6 +84,21 @@ public class StackFrameProxyImpl extends JdiProxy implements StackFrameProxy { throw new EvaluateException(error.getMessage(), error); } + @Override + public boolean isValid() { + if (!super.isValid()) { + return false; + } + try { + if (myStackFrame != null) { + myStackFrame.location(); //extra check if jdi frame is valid + } + return true; + } catch (InvalidStackFrameException e) { + return false; + } + } + @Override protected void clearCaches() { DebuggerManagerThreadImpl.assertIsManagerThread();