summaryrefslogtreecommitdiff
path: root/git
diff options
context:
space:
mode:
Diffstat (limited to 'git')
-rw-r--r--git/config.py11
-rw-r--r--git/util.py6
2 files changed, 10 insertions, 7 deletions
diff --git a/git/config.py b/git/config.py
index 293281d2..cf32d4ba 100644
--- a/git/config.py
+++ b/git/config.py
@@ -710,14 +710,13 @@ class GitConfigParser(cp.RawConfigParser, metaclass=MetaParserBuilder):
return self._read_only
@overload
- def get_value(self, section: str, option: str, default: str
- ) -> str:
- ...
+ def get_value(self, section: str, option: str, default: None = None) -> Union[int, float, str, bool]: ...
@overload
- def get_value(self, section: str, option: str, default: float
- ) -> float:
- ...
+ def get_value(self, section: str, option: str, default: str) -> str: ...
+
+ @overload
+ def get_value(self, section: str, option: str, default: float) -> float: ...
def get_value(self, section: str, option: str, default: Union[int, float, str, bool, None] = None
) -> Union[int, float, str, bool]:
diff --git a/git/util.py b/git/util.py
index 4f82219e..b81332ea 100644
--- a/git/util.py
+++ b/git/util.py
@@ -705,7 +705,11 @@ class Actor(object):
setattr(actor, attr, val)
except KeyError:
if config_reader is not None:
- setattr(actor, attr, config_reader.get_value('user', cvar, default()))
+ try:
+ val = config_reader.get('user', cvar)
+ except Exception:
+ val = default()
+ setattr(actor, attr, val)
# END config-reader handling
if not getattr(actor, attr):
setattr(actor, attr, default())