diff options
author | Björn Steinbrink <B.Steinbrink@gmx.de> | 2007-12-05 16:11:24 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-12-05 11:34:44 -0800 |
commit | 9e4bbeb95f5c9d046b671070eb35b3aa6f3ec5e6 (patch) | |
tree | 5a7d16992359ae791413185cd75dc7ab4b326c40 /builtin-config.c | |
parent | 21640376a5b3e55557020a4932ba78daffc2d77e (diff) | |
download | git-9e4bbeb95f5c9d046b671070eb35b3aa6f3ec5e6.tar.gz |
git config: Don't rely on regexec() returning 1 on non-match
Some systems don't return 1 from regexec() when the pattern does not
match (notably HP-UX which returns 20).
Bug identified by Dscho and H.Merijn Brand.
Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de>
Tested-by: H.Merijn Brand <h.m.brand@xs4all.nl>
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-config.c')
-rw-r--r-- | builtin-config.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/builtin-config.c b/builtin-config.c index 4c9ded3b1a..6175dc3738 100644 --- a/builtin-config.c +++ b/builtin-config.c @@ -38,8 +38,7 @@ static int show_config(const char* key_, const char* value_) if (use_key_regexp && regexec(key_regexp, key_, 0, NULL, 0)) return 0; if (regexp != NULL && - (do_not_match ^ - regexec(regexp, (value_?value_:""), 0, NULL, 0))) + (do_not_match ^ !!regexec(regexp, (value_?value_:""), 0, NULL, 0))) return 0; if (show_keys) { |