From e9d7946b5a914eba0e625538edcefc95e1c9b7e4 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Sat, 12 May 2012 10:45:58 -0400 Subject: [PATCH] bug 378978: [sd90] Reduce scope of scheduling rule by creating language.settings.xml in advance --- .../LanguageSettingsProvidersSerializer.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/settings/providers/LanguageSettingsProvidersSerializer.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/settings/providers/LanguageSettingsProvidersSerializer.java index 9b6224f89f1..c0a2788cc61 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/settings/providers/LanguageSettingsProvidersSerializer.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/language/settings/providers/LanguageSettingsProvidersSerializer.java @@ -10,6 +10,7 @@ *******************************************************************************/ package org.eclipse.cdt.internal.core.language.settings.providers; +import java.io.ByteArrayInputStream; import java.net.URI; import java.util.ArrayList; import java.util.Collection; @@ -916,7 +917,19 @@ public class LanguageSettingsProvidersSerializer { } } if (folder.isAccessible()) { - rule = folder; + // Create dummy file to reduce scheduling to the file itself + if (!fileStorePrj.exists()) { + try { + fileStorePrj.create(new ByteArrayInputStream("".getBytes()), true, null); //$NON-NLS-1$ + } catch (CoreException e) { + CCorePlugin.log(e); + } + } + if (fileStorePrj.exists()) { + rule = fileStorePrj; + } else { + rule = folder; + } } } if (rule == null) {