Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Leherbauer2008-01-30 11:23:28 +0000
committerAnton Leherbauer2008-01-30 11:23:28 +0000
commit7c0b0c875a06dd0be47016493c471f8b64973917 (patch)
tree7a9d99c932a23cae0906d0f518ce3740548c656d /core/org.eclipse.cdt.core/model/org
parent0c825ab41c194de55e47239c1ff3ea8ce0dca57f (diff)
downloadorg.eclipse.cdt-7c0b0c875a06dd0be47016493c471f8b64973917.tar.gz
org.eclipse.cdt-7c0b0c875a06dd0be47016493c471f8b64973917.tar.xz
org.eclipse.cdt-7c0b0c875a06dd0be47016493c471f8b64973917.zip
Fix for 208765: Sporadic crash saving scanner info build properties
Diffstat (limited to 'core/org.eclipse.cdt.core/model/org')
-rw-r--r--core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java
index c9bf55f6fdb..ce7f5f9a13f 100644
--- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java
+++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/util/PathSettingsContainer.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Intel Corporation and others.
+ * Copyright (c) 2007, 2008 Intel Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -7,6 +7,7 @@
*
* Contributors:
* Intel Corporation - Initial API and implementation
+ * Anton Leherbauer (Wind River Systems)
*******************************************************************************/
package org.eclipse.cdt.core.settings.model.util;
@@ -19,7 +20,7 @@ import java.util.Set;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
-public class PathSettingsContainer {
+public final class PathSettingsContainer {
private static final Object INEXISTENT_VALUE = new Object();
private static final String ROOY_PATH_NAME = Path.ROOT.toString();
// private static final boolean DEBUG = true;
@@ -298,9 +299,11 @@ public class PathSettingsContainer {
internalSetValue(INEXISTENT_VALUE);
}
if(!hasChildren()) {
- getDirectParentContainer().deleteChild(this);
- fDirectParentContainer.checkRemove();
- fDirectParentContainer = null;
+ if (fDirectParentContainer != null) {
+ fDirectParentContainer.deleteChild(this);
+ fDirectParentContainer.checkRemove();
+ fDirectParentContainer = null;
+ }
fRootContainer = null;
}
}

Back to the top