From ebe97e747240d45a4ae88ef0c8f7b1d8fbbd1c56 Mon Sep 17 00:00:00 2001 From: Philippe Miossec Date: Thu, 2 Oct 2014 23:41:22 +0200 Subject: [PATCH] When no value found in the git config file, use the default one specified --- GitTfs/Core/GitRepository.cs | 8 ++++++-- GitTfs/Core/IGitRepository.cs | 1 + GitTfs/Util/ConfigPropertyLoader.cs | 6 +----- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/GitTfs/Core/GitRepository.cs b/GitTfs/Core/GitRepository.cs index 9226e0f7..f7bce5ae 100644 --- a/GitTfs/Core/GitRepository.cs +++ b/GitTfs/Core/GitRepository.cs @@ -87,6 +87,11 @@ namespace Sep.Git.Tfs.Core } public T GetConfig(string key) + { + return GetConfig(key, default(T)); + } + + public T GetConfig(string key, T defaultValue) { try { @@ -95,10 +100,9 @@ namespace Sep.Git.Tfs.Core } catch (Exception) { - return default(T); + return defaultValue; } } - public void SetConfig(string key, string value) { _repository.Config.Set(key, value, ConfigurationLevel.Local); diff --git a/GitTfs/Core/IGitRepository.cs b/GitTfs/Core/IGitRepository.cs index a9f62c12..6d56ec45 100644 --- a/GitTfs/Core/IGitRepository.cs +++ b/GitTfs/Core/IGitRepository.cs @@ -10,6 +10,7 @@ namespace Sep.Git.Tfs.Core string GitDir { get; set; } string GetConfig(string key); T GetConfig(string key); + T GetConfig(string key, T defaultValue); void SetConfig(string key, string value); IEnumerable ReadAllTfsRemotes(); IGitTfsRemote ReadTfsRemote(string remoteId); diff --git a/GitTfs/Util/ConfigPropertyLoader.cs b/GitTfs/Util/ConfigPropertyLoader.cs index 145bc668..9c7cf990 100644 --- a/GitTfs/Util/ConfigPropertyLoader.cs +++ b/GitTfs/Util/ConfigPropertyLoader.cs @@ -31,11 +31,7 @@ namespace Sep.Git.Tfs.Util if (_overrides.ContainsKey(key)) return (T) _overrides[key]; - var configEntry = _globals.Repository.GetConfig(key); - if (configEntry != null) - return configEntry; - - return defaultValue; + return _globals.Repository.GetConfig(key, defaultValue); } } }