summaryrefslogtreecommitdiff
path: root/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java')
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java15
1 files changed, 9 insertions, 6 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java
index ec0cef4e76d5..d0313e04cf9f 100644
--- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java
+++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorFactoryImpl.java
@@ -203,14 +203,17 @@ public class EditorFactoryImpl extends EditorFactory implements ApplicationCompo
@Override
public void releaseEditor(@NotNull Editor editor) {
try {
- ((EditorImpl)editor).release();
+ myEditorFactoryEventDispatcher.getMulticaster().editorReleased(new EditorFactoryEvent(this, editor));
}
finally {
- myEditors.remove(editor);
- myEditorFactoryEventDispatcher.getMulticaster().editorReleased(new EditorFactoryEvent(this, editor));
-
- if (LOG.isDebugEnabled()) {
- LOG.debug("number of Editor's:" + myEditors.size());
+ try {
+ ((EditorImpl)editor).release();
+ }
+ finally {
+ myEditors.remove(editor);
+ if (LOG.isDebugEnabled()) {
+ LOG.debug("number of Editor's:" + myEditors.size());
+ }
}
}
}