From 33e4020e5d9358afacb296d52886191f91d2e8a7 Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 15 Oct 2012 15:31:18 +0200 Subject: [PATCH] tolerate lookup being closed when making the file writable before insertion (EA-39999) --- .../com/intellij/codeInsight/lookup/impl/LookupImpl.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java index c241371e2819..72ef454026b1 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/lookup/impl/LookupImpl.java @@ -600,13 +600,14 @@ public class LookupImpl extends LightweightHint implements LookupEx, Disposable } final PsiFile file = getPsiFile(); - if (file != null && !WriteCommandAction.ensureFilesWritable(myProject, Arrays.asList(file))) { - doHide(false, true); - fireItemSelected(null, completionChar); + boolean writableOk = file == null || WriteCommandAction.ensureFilesWritable(myProject, Arrays.asList(file)); + if (myDisposed) { // ensureFilesWritable could close us by showing a dialog return; } - if (myDisposed) { // ensureFilesWritable could close us by showing a dialog + if (!writableOk) { + doHide(false, true); + fireItemSelected(null, completionChar); return; }