From 3d4c5b00910d72f37a0f8a31f3a70d042e9db179 Mon Sep 17 00:00:00 2001 From: Vladimir Dolzhenko Date: Sun, 19 Apr 2020 23:08:35 +0200 Subject: [PATCH] Fix NPE in LookupCancelService$Reminiscence #EA-228125 Fixed --- .../org/jetbrains/kotlin/idea/completion/LookupCancelService.kt | 2 +- .../jetbrains/kotlin/idea/completion/LookupCancelWatcher.kt.192 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelService.kt b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelService.kt index 148bcb300e9..cbdb9058098 100644 --- a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelService.kt +++ b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelService.kt @@ -35,7 +35,7 @@ class LookupCancelService { // forget about auto-popup cancellation when the caret is moved to the start or before it private var editorListener: CaretListener? = object : CaretListener { override fun caretPositionChanged(e: CaretEvent) { - if (!marker!!.isValid || editor.logicalPositionToOffset(e.newPosition) <= offset) { + if (marker != null && (!marker!!.isValid || editor.logicalPositionToOffset(e.newPosition) <= offset)) { dispose() } } diff --git a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelWatcher.kt.192 b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelWatcher.kt.192 index 6a3f3a44076..46318e0e9c5 100644 --- a/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelWatcher.kt.192 +++ b/idea/idea-completion/src/org/jetbrains/kotlin/idea/completion/LookupCancelWatcher.kt.192 @@ -45,7 +45,7 @@ class LookupCancelWatcher(val project: Project) : ProjectComponent { // forget about auto-popup cancellation when the caret is moved to the start or before it private var editorListener: CaretListener? = object : CaretListener { override fun caretPositionChanged(e: CaretEvent) { - if (!marker!!.isValid || editor.logicalPositionToOffset(e.newPosition) <= offset) { + if (marker != null && (!marker!!.isValid || editor.logicalPositionToOffset(e.newPosition) <= offset)) { dispose() } }