X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FConfig.pm;h=ef277c40a55e14c9719a07ecf9546e9c94edd4ef;hb=41a555ebab603d492440e97c8ddd889617cc51f0;hp=01a01c62b9f3b8e6eae60be54ac70b03be3bd14d;hpb=bda9f9417bee51e4e18808578a001b4673a4123a;p=public-inbox.git diff --git a/lib/PublicInbox/Config.pm b/lib/PublicInbox/Config.pm index 01a01c62..ef277c40 100644 --- a/lib/PublicInbox/Config.pm +++ b/lib/PublicInbox/Config.pm @@ -366,6 +366,17 @@ sub _fill_code_repo { $git; } +sub _git_config_bool ($) { + my ($val) = @_; + if ($val =~ /\A(?:false|no|off|[\-\+]?(?:0x)?0+)\z/i) { + 0; + } elsif ($val =~ /\A(?:true|yes|on|[\-\+]?(?:0x)?[0-9]+)\z/i) { + 1; + } else { + undef; + } +} + sub _fill { my ($self, $pfx) = @_; my $ibx = {}; @@ -379,10 +390,8 @@ sub _fill { foreach my $k (qw(obfuscate)) { my $v = $self->{"$pfx.$k"}; defined $v or next; - if ($v =~ /\A(?:false|no|off|0)\z/) { - $ibx->{$k} = 0; - } elsif ($v =~ /\A(?:true|yes|on|1)\z/) { - $ibx->{$k} = 1; + if (defined(my $bval = _git_config_bool($v))) { + $ibx->{$k} = $bval; } else { warn "Ignoring $pfx.$k=$v in config, not boolean\n"; }