From 332e1d58bd17a2ff45cc431db9276a56d75dec35 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Mon, 2 Apr 2007 18:55:45 +0400 Subject: [PATCH] [mike] fix NPE on creating new project with empty config dir --- .../components/impl/stores/DefaultProjectStoreImpl.java | 4 +++- .../openapi/components/impl/stores/ProjectStoreImpl.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/source/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java b/source/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java index b469b2f4a463..ea86661a0fb0 100644 --- a/source/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java +++ b/source/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java @@ -30,8 +30,10 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { myElement = projectManager.getDefaultProjectRootElement(); } + @Nullable Element getStateCopy() { - return (Element)myProjectManager.getDefaultProjectRootElement().clone(); + final Element element = myProjectManager.getDefaultProjectRootElement(); + return element != null ? (Element)element.clone() : null; } diff --git a/source/com/intellij/openapi/components/impl/stores/ProjectStoreImpl.java b/source/com/intellij/openapi/components/impl/stores/ProjectStoreImpl.java index 52840f9fbeae..3a9a573a0410 100644 --- a/source/com/intellij/openapi/components/impl/stores/ProjectStoreImpl.java +++ b/source/com/intellij/openapi/components/impl/stores/ProjectStoreImpl.java @@ -302,7 +302,9 @@ class ProjectStoreImpl extends BaseFileConfigurableStoreImpl implements IProject assert projectStore instanceof DefaultProjectStoreImpl; DefaultProjectStoreImpl defaultProjectStore = (DefaultProjectStoreImpl)projectStore; final Element element = defaultProjectStore.getStateCopy(); - xmlElementStorage.setDefaultState(element); + if (element != null) { + xmlElementStorage.setDefaultState(element); + } } @NotNull