From: Petr Baudis Date: Wed, 9 May 2007 10:49:41 +0000 (+0200) Subject: Git.pm: config_boolean() -> config_bool() X-Git-Tag: v1.5.2-rc3~6 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=35c49eeae7e71e8554f27958a16405397c69b552;p=git.git Git.pm: config_boolean() -> config_bool() This patch renames config_boolean() to config_bool() for consistency with the commandline interface and because it is shorter but still obvious. ;-) It also changes the return value from some obscure string to real Perl boolean, allowing for clean user code. Signed-off-by: Petr Baudis --- diff --git a/git-remote.perl b/git-remote.perl index 52013fe76..576379912 100755 --- a/git-remote.perl +++ b/git-remote.perl @@ -297,9 +297,9 @@ sub update_remote { } elsif ($name eq 'default') { undef @remotes; for (sort keys %$remote) { - my $do_fetch = $git->config_boolean("remote." . $_ . + my $do_fetch = $git->config_bool("remote." . $_ . ".skipDefaultUpdate"); - if (!defined($do_fetch) || $do_fetch ne "true") { + unless ($do_fetch) { push @remotes, $_; } } diff --git a/git-send-email.perl b/git-send-email.perl index a6e3e0261..404095f25 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -154,8 +154,8 @@ if ($@) { $term = new FakeTerm "$@: going non-interactive"; } -my $def_chain = $repo->config_boolean('sendemail.chainreplyto'); -if ($def_chain and $def_chain eq 'false') { +my $def_chain = $repo->config_bool('sendemail.chainreplyto'); +if (defined $def_chain and not $def_chain) { $chain_reply_to = 0; } diff --git a/perl/Git.pm b/perl/Git.pm index b5b1cf5ed..8fd361175 100644 --- a/perl/Git.pm +++ b/perl/Git.pm @@ -516,9 +516,11 @@ sub config { } -=item config_boolean ( VARIABLE ) +=item config_bool ( VARIABLE ) -Retrieve the boolean configuration C. +Retrieve the bool configuration C. The return value +is usable as a boolean in perl (and C if it's not defined, +of course). Must be called on a repository instance. @@ -526,14 +528,16 @@ This currently wraps command('config') so it is not so fast. =cut -sub config_boolean { +sub config_bool { my ($self, $var) = @_; $self->repo_path() or throw Error::Simple("not a repository"); try { - return $self->command_oneline('config', '--bool', '--get', + my $val = $self->command_oneline('config', '--bool', '--get', $var); + return undef unless defined $val; + return $val eq 'true'; } catch Git::Error::Command with { my $E = shift; if ($E->value() == 1) {