[gitg: 4/7] Use config snapshot when reading config values
- From: Jesse van den Kieboom <jessevdk src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gitg: 4/7] Use config snapshot when reading config values
- Date: Thu, 30 Jul 2015 22:59:32 +0000 (UTC)
commit 75d1148df914a4e4e52b302d2252bb83bdd1f92d
Author: Jesse van den Kieboom <jessevdk gnome org>
Date: Fri Jul 31 00:57:01 2015 +0200
Use config snapshot when reading config values
gitg/gitg-author-details-dialog.vala | 18 ++++++++++++------
gitg/gitg-remote-manager.vala | 2 +-
gitg/history/gitg-history.vala | 2 +-
libgitg/gitg-credentials-manager.vala | 2 +-
libgitg/gitg-repository.vala | 2 +-
libgitg/gitg-stage-status-enumerator.vala | 2 +-
libgitg/gitg-stage.vala | 2 +-
tests/libgitg/test-encoding.vala | 2 +-
8 files changed, 19 insertions(+), 13 deletions(-)
---
diff --git a/gitg/gitg-author-details-dialog.vala b/gitg/gitg-author-details-dialog.vala
index 59f66dd..37b3eab 100644
--- a/gitg/gitg-author-details-dialog.vala
+++ b/gitg/gitg-author-details-dialog.vala
@@ -81,15 +81,21 @@ namespace Gitg
try
{
- author_name = d_config.get_string("user.name");
- }
- catch {}
+ var config = d_config.snapshot();
- try
+ try
+ {
+ author_name = config.get_string("user.name");
+ } catch {}
+
+ try
+ {
+ author_email = config.get_string("user.email");
+ } catch {}
+ }
+ catch
{
- author_email = d_config.get_string("user.email");
}
- catch {}
if (author_name != "")
{
diff --git a/gitg/gitg-remote-manager.vala b/gitg/gitg-remote-manager.vala
index d008855..116639c 100644
--- a/gitg/gitg-remote-manager.vala
+++ b/gitg/gitg-remote-manager.vala
@@ -71,7 +71,7 @@ class RemoteManager : Object, GitgExt.RemoteLookup
try
{
- config = d_window.repository.get_config();
+ config = d_window.repository.get_config().snapshot();
} catch { return; }
Regex r;
diff --git a/gitg/history/gitg-history.vala b/gitg/history/gitg-history.vala
index 49c0395..7f76e0b 100644
--- a/gitg/history/gitg-history.vala
+++ b/gitg/history/gitg-history.vala
@@ -336,7 +336,7 @@ namespace GitgHistory
try
{
config = repository.get_config();
- ref_names = config.get_string("gitg.mainline").split(",");
+ ref_names = config.snapshot().get_string("gitg.mainline").split(",");
}
catch
{
diff --git a/libgitg/gitg-credentials-manager.vala b/libgitg/gitg-credentials-manager.vala
index 4e98d3e..d913bd6 100644
--- a/libgitg/gitg-credentials-manager.vala
+++ b/libgitg/gitg-credentials-manager.vala
@@ -55,7 +55,7 @@ public class CredentialsManager
try
{
- var config = d_remote.get_owner().get_config();
+ var config = d_remote.get_owner().get_config().snapshot();
var r = new Regex("credential\\.(.*)\\.username");
config.match_foreach(r, (info, value) => {
diff --git a/libgitg/gitg-repository.vala b/libgitg/gitg-repository.vala
index 727b68c..effcb8b 100644
--- a/libgitg/gitg-repository.vala
+++ b/libgitg/gitg-repository.vala
@@ -205,7 +205,7 @@ public class Repository : Ggit.Repository
date = new DateTime.now_local();
}
- var conf = get_config();
+ var conf = get_config().snapshot();
if (user == null)
{
diff --git a/libgitg/gitg-stage-status-enumerator.vala b/libgitg/gitg-stage-status-enumerator.vala
index 709698b..2b17ee4 100644
--- a/libgitg/gitg-stage-status-enumerator.vala
+++ b/libgitg/gitg-stage-status-enumerator.vala
@@ -237,7 +237,7 @@ public class StageStatusEnumerator : Object
{
d_ignored_submodules = new Gee.HashSet<string>();
- repository.get_config().match_foreach(s_ignore_regex, (match, val) => {
+ repository.get_config().snapshot().match_foreach(s_ignore_regex, (match, val) => {
if (val != "true")
{
return 0;
diff --git a/libgitg/gitg-stage.vala b/libgitg/gitg-stage.vala
index 27eb8a8..7199ccc 100644
--- a/libgitg/gitg-stage.vala
+++ b/libgitg/gitg-stage.vala
@@ -384,7 +384,7 @@ public class Stage : Object
}
// Write tree from index
- var conf = d_repository.get_config();
+ var conf = d_repository.get_config().snapshot();
string emsg = message;
diff --git a/tests/libgitg/test-encoding.vala b/tests/libgitg/test-encoding.vala
index 2848433..6fc8a95 100644
--- a/tests/libgitg/test-encoding.vala
+++ b/tests/libgitg/test-encoding.vala
@@ -28,7 +28,7 @@ class Gitg.Test.Encoding : Gitg.Test.Repository
{
base.set_up();
- d_repository.get_config().set_string("i18n.commitencoding", "KOI8-R");
+ d_repository.get_config().snapshot().set_string("i18n.commitencoding", "KOI8-R");
index_modify("b", "staged changes\n");
index_modify("a", "lala\n");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]