diff --git a/java/debugger/impl/src/com/intellij/debugger/actions/JumpToObjectAction.java b/java/debugger/impl/src/com/intellij/debugger/actions/JumpToObjectAction.java index 498ee6d44417..17379560e107 100644 --- a/java/debugger/impl/src/com/intellij/debugger/actions/JumpToObjectAction.java +++ b/java/debugger/impl/src/com/intellij/debugger/actions/JumpToObjectAction.java @@ -110,7 +110,7 @@ public class JumpToObjectAction extends DebuggerAction{ SourcePosition position = debugProcess.getPositionManager().getSourcePosition(location); // adjust position for non-anonymous classes if (clsType.name().indexOf('$') < 0) { - final PsiClass classAt = position != null? JVMNameUtil.getClassAt(position) : null; + final PsiClass classAt = JVMNameUtil.getClassAt(position); if (classAt != null) { final SourcePosition classPosition = SourcePosition.createFromElement(classAt); if (classPosition != null) { diff --git a/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java b/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java index e1a28f705d66..13e8f155dff4 100644 --- a/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java +++ b/java/debugger/impl/src/com/intellij/debugger/engine/JVMNameUtil.java @@ -259,9 +259,6 @@ public class JVMNameUtil { @Nullable public static JVMName getContextClassJVMQualifiedName(@Nullable SourcePosition pos) { - if (pos == null) { - return null; - } final PsiClass psiClass = getClassAt(pos); if (psiClass == null) { return null; @@ -319,13 +316,16 @@ public class JVMNameUtil { } @Nullable - public static PsiClass getClassAt(SourcePosition position) { + public static PsiClass getClassAt(@Nullable SourcePosition position) { + if (position == null) { + return null; + } final PsiElement element = position.getElementAt(); return (element != null) ? PsiTreeUtil.getParentOfType(element, PsiClass.class, false) : null; } @Nullable - public static String getSourcePositionClassDisplayName(DebugProcessImpl debugProcess, SourcePosition position) { + public static String getSourcePositionClassDisplayName(DebugProcessImpl debugProcess, @Nullable SourcePosition position) { if (position == null) { return null; } @@ -391,7 +391,7 @@ public class JVMNameUtil { } @Nullable - public static String getSourcePositionPackageDisplayName(DebugProcessImpl debugProcess, SourcePosition position) { + public static String getSourcePositionPackageDisplayName(DebugProcessImpl debugProcess, @Nullable SourcePosition position) { if (position == null) { return null; } diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/PositionHighlighter.java b/java/debugger/impl/src/com/intellij/debugger/ui/PositionHighlighter.java index dd0b0de43151..6386fb41314e 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/PositionHighlighter.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/PositionHighlighter.java @@ -240,8 +240,8 @@ public class PositionHighlighter { if (breakpoint instanceof BreakpointWithHighlighter) { if (((BreakpointWithHighlighter)breakpoint).isVisible() && breakpoint.isValid()) { breakpoint.reload(); - final SourcePosition sourcePosition = ((BreakpointWithHighlighter)breakpoint).getSourcePosition(); - if (sourcePosition == null || sourcePosition.getLine() != lineIndex) { + int bptLine = ((BreakpointWithHighlighter)breakpoint).getLineIndex(); + if (bptLine < 0 || bptLine != lineIndex) { eventsOutOfLine.add(eventDescriptor); } } diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/Breakpoint.java b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/Breakpoint.java index e25a39463143..bd74d0ff6d90 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/Breakpoint.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/Breakpoint.java @@ -91,6 +91,7 @@ public abstract class Breakpoint
implements return myXBreakpoint.getProperties(); } + @Nullable public abstract PsiClass getPsiClass(); /** * Request for creating all needed JPDA requests in the specified VM @@ -474,6 +475,7 @@ public abstract class Breakpoint
implements // myLogMessage = logMessage; //} + @Nullable public abstract PsiElement getEvaluationElement(); protected TextWithImports getLogMessage() { diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/BreakpointWithHighlighter.java b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/BreakpointWithHighlighter.java index 522cebce04f0..cf918d384456 100644 --- a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/BreakpointWithHighlighter.java +++ b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/BreakpointWithHighlighter.java @@ -418,7 +418,7 @@ public abstract class BreakpointWithHighlighter
() { @Nullable @Override @@ -507,10 +507,15 @@ public abstract class BreakpointWithHighlighter
= document.getLineCount()) {
diff --git a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/FieldBreakpoint.java b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/FieldBreakpoint.java
index e89adfdac186..707b1851f630 100644
--- a/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/FieldBreakpoint.java
+++ b/java/debugger/impl/src/com/intellij/debugger/ui/breakpoints/FieldBreakpoint.java
@@ -218,7 +218,7 @@ public class FieldBreakpoint extends BreakpointWithHighlighter