remote.c: do not trigger remote.<name>.<var> codepath for two-level names
authorJohannes Sixt <j6t@kdbg.org>
Thu, 23 Apr 2009 13:49:05 +0000 (15:49 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 24 Apr 2009 08:29:28 +0000 (01:29 -0700)
If the config file contains a section like this:

    [remote]
            default = foo

(it should be '[remotes]') then commands like

    git status
    git checkout
    git branch -v

fail even though they are not obviously related to remotes. (These
commands write "ahead, behind" information and, therefore, access the
per-remote information).

Unknown configuration keys should be ignored, not trigger errors.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
remote.c

index 91f7485..d66e2f3 100644 (file)
--- a/remote.c
+++ b/remote.c
@@ -366,7 +366,7 @@ static int handle_config(const char *key, const char *value, void *cb)
        }
        subkey = strrchr(name, '.');
        if (!subkey)
-               return error("Config with no key for remote %s", name);
+               return 0;
        remote = make_remote(name, subkey - name);
        remote->origin = REMOTE_CONFIG;
        if (!strcmp(subkey, ".mirror"))