diff --git a/platform/core-impl/src/com/intellij/core/CoreApplicationEnvironment.java b/platform/core-impl/src/com/intellij/core/CoreApplicationEnvironment.java index cce44c3f1e1a..be5f256384ef 100644 --- a/platform/core-impl/src/com/intellij/core/CoreApplicationEnvironment.java +++ b/platform/core-impl/src/com/intellij/core/CoreApplicationEnvironment.java @@ -281,7 +281,11 @@ public class CoreApplicationEnvironment { Disposer.register(myParentDisposable, new Disposable() { @Override public void dispose() { - extensionPoint.unregisterExtension(extension); + // There is a possible case that particular extension was replaced in particular environment, e.g. Upsource + // replaces some IntelliJ extensions. + if (extensionPoint.hasExtension(extension)) { + extensionPoint.unregisterExtension(extension); + } } }); }