Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java')
-rw-r--r--bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java b/bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java
index 6c441582c..05442fb31 100644
--- a/bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java
+++ b/bundles/org.eclipse.equinox.preferences/src/org/eclipse/core/internal/preferences/PreferencesService.java
@@ -604,19 +604,21 @@ public class PreferencesService implements IPreferencesService {
Preferences node = context.getNode(qualifier);
if (node != null) {
found = true;
- if (childPath != null)
+ if (childPath != null && node.nodeExists(childPath))
node = node.node(childPath);
result.add(node);
}
}
}
if (!found) {
- Preferences node = getRootNode().node(scopeString).node(qualifier);
- if (childPath != null)
- node = node.node(childPath);
- result.add(node);
+ Preferences node = getRootNode().node(scopeString);
+ if (node.nodeExists(qualifier)) {
+ node = node.node(qualifier);
+ if (childPath != null && node.nodeExists(childPath))
+ node = node.node(childPath);
+ result.add(node);
+ }
}
- found = false;
}
@Override

Back to the top