From 556e08b9eba05038c23d7a47dd133b3fef58f4ef Mon Sep 17 00:00:00 2001 From: Natalia Ukhorskaya Date: Mon, 19 Oct 2015 18:29:39 +0300 Subject: [PATCH] Fix exception during Step Over --- .../debugger/stepping/KotlinSteppingCommandProvider.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/debugger/stepping/KotlinSteppingCommandProvider.kt b/idea/src/org/jetbrains/kotlin/idea/debugger/stepping/KotlinSteppingCommandProvider.kt index 98c840e3089..0ae1e8140c7 100644 --- a/idea/src/org/jetbrains/kotlin/idea/debugger/stepping/KotlinSteppingCommandProvider.kt +++ b/idea/src/org/jetbrains/kotlin/idea/debugger/stepping/KotlinSteppingCommandProvider.kt @@ -16,6 +16,7 @@ package org.jetbrains.kotlin.idea.debugger.stepping +import com.intellij.debugger.NoDataException import com.intellij.debugger.SourcePosition import com.intellij.debugger.engine.DebugProcessImpl import com.intellij.debugger.engine.SuspendContextImpl @@ -354,7 +355,13 @@ private fun SuspendContextImpl.getNextPositionWithFilter( skip: (JetFile, Int) -> Boolean ): XSourcePositionImpl? { for (location in locations) { - val file = this.debugProcess.positionManager.getSourcePosition(location)?.file as? JetFile ?: continue + val file = try { + this.debugProcess.positionManager.getSourcePosition(location)?.file as? JetFile + } + catch(e: NoDataException) { + null + } ?: continue + val currentLine = location.lineNumber() - 1 val lineStartOffset = file.getLineStartOffset(currentLine) ?: continue if (skip(file, lineStartOffset)) continue