diff options
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java')
-rw-r--r-- | platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java index 2f95c21cb558..e7b20959369e 100644 --- a/platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/project/impl/ProjectManagerImpl.java @@ -21,6 +21,7 @@ import com.intellij.conversion.ConversionService; import com.intellij.ide.AppLifecycleListener; import com.intellij.ide.RecentProjectsManagerBase; import com.intellij.ide.impl.ProjectUtil; +import com.intellij.ide.plugins.PluginManager; import com.intellij.ide.startup.impl.StartupManagerImpl; import com.intellij.notification.NotificationsManager; import com.intellij.openapi.Disposable; @@ -354,7 +355,7 @@ public class ProjectManagerImpl extends ProjectManagerEx implements NamedJDOMExt myDefaultProjectRootElement = null; } catch (Throwable t) { - LOG.error(t); + PluginManager.processException(t); } } }); @@ -362,6 +363,7 @@ public class ProjectManagerImpl extends ProjectManagerEx implements NamedJDOMExt return myDefaultProject; } + @Nullable public Element getDefaultProjectRootElement() { return myDefaultProjectRootElement; } @@ -1126,33 +1128,27 @@ public class ProjectManagerImpl extends ProjectManagerEx implements NamedJDOMExt } @Override - public void writeExternal(Element parentNode) throws WriteExternalException { + public void writeExternal(Element parentNode) { if (myDefaultProject != null) { myDefaultProject.save(); } - if (myDefaultProjectRootElement == null) { //read external isn't called if config folder is absent - myDefaultProjectRootElement = new Element(ELEMENT_DEFAULT_PROJECT); + if (myDefaultProjectRootElement != null) { + myDefaultProjectRootElement.detach(); + parentNode.addContent(myDefaultProjectRootElement); } - - myDefaultProjectRootElement.detach(); - parentNode.addContent(myDefaultProjectRootElement); } - public void setDefaultProjectRootElement(final Element defaultProjectRootElement) { myDefaultProjectRootElement = defaultProjectRootElement; } @Override - public void readExternal(Element parentNode) throws InvalidDataException { + public void readExternal(Element parentNode) { myDefaultProjectRootElement = parentNode.getChild(ELEMENT_DEFAULT_PROJECT); - - if (myDefaultProjectRootElement == null) { - myDefaultProjectRootElement = new Element(ELEMENT_DEFAULT_PROJECT); + if (myDefaultProjectRootElement != null) { + myDefaultProjectRootElement.detach(); } - - myDefaultProjectRootElement.detach(); } @Override |