Merge branch 'stable-5.1'
* stable-5.1:
Prepare 5.1.3-SNAPSHOT builds
EGit v5.1.2.201810061102-r
Don't use virtual memory mapping in WindowCache on Windows
Change-Id: I0fbe5e117691a13a1e6bdbc89d690aff42a11a2f
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/GitCorePreferenceInitializer.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/GitCorePreferenceInitializer.java
index 4aefd8a..3a2f121 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/GitCorePreferenceInitializer.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/GitCorePreferenceInitializer.java
@@ -15,6 +15,7 @@
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.core.runtime.preferences.DefaultScope;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jgit.util.SystemReader;
/** Initializes plugin preferences with default values. */
public class GitCorePreferenceInitializer extends AbstractPreferenceInitializer {
@@ -26,7 +27,8 @@
p.putInt(GitCorePreferences.core_packedGitWindowSize, 8 * 1024);
p.putInt(GitCorePreferences.core_packedGitLimit, 10 * MB);
- p.putBoolean(GitCorePreferences.core_packedGitMMAP, true);
+ p.putBoolean(GitCorePreferences.core_packedGitMMAP,
+ !SystemReader.getInstance().isWindows());
p.putInt(GitCorePreferences.core_deltaBaseCacheLimit, 10 * MB);
p.putInt(GitCorePreferences.core_streamFileThreshold, 50 * MB);
p.putBoolean(GitCorePreferences.core_autoShareProjects, true);
diff --git a/org.eclipse.egit.core/src/org/eclipse/egit/core/project/GitProjectData.java b/org.eclipse.egit.core/src/org/eclipse/egit/core/project/GitProjectData.java
index e66aeb8..507c37f 100644
--- a/org.eclipse.egit.core/src/org/eclipse/egit/core/project/GitProjectData.java
+++ b/org.eclipse.egit.core/src/org/eclipse/egit/core/project/GitProjectData.java
@@ -63,6 +63,7 @@
import org.eclipse.jgit.storage.file.WindowCacheConfig;
import org.eclipse.jgit.util.FS;
import org.eclipse.jgit.util.FileUtils;
+import org.eclipse.jgit.util.SystemReader;
import org.eclipse.osgi.util.NLS;
import org.eclipse.team.core.RepositoryProvider;
import org.eclipse.team.core.TeamException;
@@ -416,7 +417,14 @@
IEclipsePreferences p = InstanceScope.INSTANCE.getNode(Activator.getPluginId());
c.setPackedGitLimit(p.getInt(GitCorePreferences.core_packedGitLimit, d.getInt(GitCorePreferences.core_packedGitLimit, 0)));
c.setPackedGitWindowSize(p.getInt(GitCorePreferences.core_packedGitWindowSize, d.getInt(GitCorePreferences.core_packedGitWindowSize, 0)));
- c.setPackedGitMMAP(p.getBoolean(GitCorePreferences.core_packedGitMMAP, d.getBoolean(GitCorePreferences.core_packedGitMMAP, false)));
+ if (SystemReader.getInstance().isWindows()) {
+ c.setPackedGitMMAP(false);
+ } else {
+ c.setPackedGitMMAP(
+ p.getBoolean(GitCorePreferences.core_packedGitMMAP,
+ d.getBoolean(GitCorePreferences.core_packedGitMMAP,
+ false)));
+ }
c.setDeltaBaseCacheLimit(p.getInt(GitCorePreferences.core_deltaBaseCacheLimit, d.getInt(GitCorePreferences.core_deltaBaseCacheLimit, 0)));
c.setStreamFileThreshold(p.getInt(GitCorePreferences.core_streamFileThreshold, d.getInt(GitCorePreferences.core_streamFileThreshold, 0)));
c.install();
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/WindowCachePreferencePage.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/WindowCachePreferencePage.java
index ce3c228..2bf360a 100644
--- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/WindowCachePreferencePage.java
+++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/preferences/WindowCachePreferencePage.java
@@ -17,6 +17,7 @@
import org.eclipse.egit.ui.internal.UIText;
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.jgit.util.SystemReader;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.preferences.ScopedPreferenceStore;
@@ -63,9 +64,13 @@
UIText.WindowCachePreferencePage_streamFileThreshold,
getFieldEditorParent(), 10 * MB, 1 * GB));
- addField(new BooleanFieldEditor(GitCorePreferences.core_packedGitMMAP,
- UIText.WindowCachePreferencePage_packedGitMMAP,
- getFieldEditorParent()));
+ if (!SystemReader.getInstance().isWindows()) {
+ BooleanFieldEditor mmapEditor = new BooleanFieldEditor(
+ GitCorePreferences.core_packedGitMMAP,
+ UIText.WindowCachePreferencePage_packedGitMMAP,
+ getFieldEditorParent());
+ addField(mmapEditor);
+ }
}
@Override