summaryrefslogtreecommitdiff
path: root/java/debugger/openapi/src/com/intellij/debugger
diff options
context:
space:
mode:
Diffstat (limited to 'java/debugger/openapi/src/com/intellij/debugger')
-rw-r--r--java/debugger/openapi/src/com/intellij/debugger/SourcePosition.java4
-rw-r--r--java/debugger/openapi/src/com/intellij/debugger/engine/DebugProcess.java17
-rw-r--r--java/debugger/openapi/src/com/intellij/debugger/engine/JSR45PositionManager.java7
3 files changed, 17 insertions, 11 deletions
diff --git a/java/debugger/openapi/src/com/intellij/debugger/SourcePosition.java b/java/debugger/openapi/src/com/intellij/debugger/SourcePosition.java
index 45f50d34b922..86bdbde18201 100644
--- a/java/debugger/openapi/src/com/intellij/debugger/SourcePosition.java
+++ b/java/debugger/openapi/src/com/intellij/debugger/SourcePosition.java
@@ -233,7 +233,7 @@ public abstract class SourcePosition implements Navigatable{
}
}
- PsiElement element;
+ PsiElement element = null;
int offset = startOffset;
while (true) {
final CharSequence charsSequence = document.getCharsSequence();
@@ -243,6 +243,8 @@ public abstract class SourcePosition implements Navigatable{
break;
}
}
+ if (offset >= charsSequence.length()) break;
+
element = rootElement.findElementAt(offset);
if (element instanceof PsiComment) {
diff --git a/java/debugger/openapi/src/com/intellij/debugger/engine/DebugProcess.java b/java/debugger/openapi/src/com/intellij/debugger/engine/DebugProcess.java
index 66fea2d7f38c..7a3624b1d16a 100644
--- a/java/debugger/openapi/src/com/intellij/debugger/engine/DebugProcess.java
+++ b/java/debugger/openapi/src/com/intellij/debugger/engine/DebugProcess.java
@@ -22,6 +22,7 @@ import com.intellij.debugger.engine.jdi.VirtualMachineProxy;
import com.intellij.debugger.engine.managerThread.DebuggerManagerThread;
import com.intellij.debugger.requests.RequestManager;
import com.intellij.execution.ExecutionResult;
+import com.intellij.execution.process.ProcessHandler;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;
import com.intellij.psi.search.GlobalSearchScope;
@@ -37,7 +38,7 @@ import java.util.List;
public interface DebugProcess {
@NonNls String JAVA_STRATUM = "Java";
- <T> T getUserData(Key<T> key);
+ <T> T getUserData(Key<T> key);
<T> void putUserData(Key<T> key, T value);
Project getProject();
@@ -76,17 +77,17 @@ public interface DebugProcess {
List args) throws EvaluateException;
/**
- * Is equivalent to invokeInstanceMethod(evaluationContext, classType, method, args, 0)
+ * Is equivalent to invokeInstanceMethod(evaluationContext, classType, method, args, 0)
*/
Value invokeMethod(EvaluationContext evaluationContext,
ClassType classType,
Method method,
List args) throws EvaluateException;
- Value invokeInstanceMethod(EvaluationContext evaluationContext,
- ObjectReference objRef,
- Method method,
- List args,
+ Value invokeInstanceMethod(EvaluationContext evaluationContext,
+ ObjectReference objRef,
+ Method method,
+ List args,
int invocationOptions) throws EvaluateException;
ReferenceType findClass(EvaluationContext evaluationContext,
@@ -112,4 +113,8 @@ public interface DebugProcess {
*/
@NotNull
GlobalSearchScope getSearchScope();
+
+ void printToConsole(String text);
+
+ ProcessHandler getProcessHandler();
}
diff --git a/java/debugger/openapi/src/com/intellij/debugger/engine/JSR45PositionManager.java b/java/debugger/openapi/src/com/intellij/debugger/engine/JSR45PositionManager.java
index f188409f607d..d33e9ade7e08 100644
--- a/java/debugger/openapi/src/com/intellij/debugger/engine/JSR45PositionManager.java
+++ b/java/debugger/openapi/src/com/intellij/debugger/engine/JSR45PositionManager.java
@@ -20,7 +20,6 @@ import com.intellij.debugger.NoDataException;
import com.intellij.debugger.PositionManager;
import com.intellij.debugger.SourcePosition;
import com.intellij.debugger.requests.ClassPrepareRequestor;
-import com.intellij.execution.process.ProcessOutputTypes;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileTypes.FileType;
@@ -167,11 +166,11 @@ public abstract class JSR45PositionManager<Scope> implements PositionManager {
}
catch(AbsentInformationException ignored) {
}
- catch(ClassNotPreparedException ignored) {
+ catch(ClassNotPreparedException ignored) {
}
catch (InternalError ignored) {
- myDebugProcess.getExecutionResult().getProcessHandler().notifyTextAvailable(
- DebuggerBundle.message("internal.error.locations.of.line", type.name()), ProcessOutputTypes.SYSTEM);
+ myDebugProcess.printToConsole(
+ DebuggerBundle.message("internal.error.locations.of.line", type.name()));
}
return null;
}