help: use parse_config_key for man config
[gitweb.git] / builtin / help.c
index bd86253d835fce671ed19676e5efeb59a6fc261d..04cb77d67cf64d4a37f2d8c14b11e94913f90de9 100644 (file)
@@ -237,21 +237,21 @@ static int add_man_viewer_cmd(const char *name,
 
 static int add_man_viewer_info(const char *var, const char *value)
 {
-       const char *name = var + 4;
-       const char *subkey = strrchr(name, '.');
+       const char *name, *subkey;
+       int namelen;
 
-       if (!subkey)
+       if (parse_config_key(var, "man", &name, &namelen, &subkey) < 0 || !name)
                return 0;
 
-       if (!strcmp(subkey, ".path")) {
+       if (!strcmp(subkey, "path")) {
                if (!value)
                        return config_error_nonbool(var);
-               return add_man_viewer_path(name, subkey - name, value);
+               return add_man_viewer_path(name, namelen, value);
        }
-       if (!strcmp(subkey, ".cmd")) {
+       if (!strcmp(subkey, "cmd")) {
                if (!value)
                        return config_error_nonbool(var);
-               return add_man_viewer_cmd(name, subkey - name, value);
+               return add_man_viewer_cmd(name, namelen, value);
        }
 
        return 0;