builtin-tag.c: remove cruft
[gitweb.git] / setup.c
diff --git a/setup.c b/setup.c
index 23c9a11be5630406e266d04f1ce229220f4c1b34..dc247a84c49709d2bff00440e5ac976df83acd2e 100644 (file)
--- a/setup.c
+++ b/setup.c
@@ -91,7 +91,7 @@ const char *prefix_path(const char *prefix, int len, const char *path)
 {
        const char *orig = path;
        char *sanitized = xmalloc(len + strlen(path) + 1);
-       if (*orig == '/')
+       if (is_absolute_path(orig))
                strcpy(sanitized, path);
        else {
                if (len)
@@ -100,7 +100,7 @@ const char *prefix_path(const char *prefix, int len, const char *path)
        }
        if (sanitary_path_copy(sanitized, sanitized))
                goto error_out;
-       if (*orig == '/') {
+       if (is_absolute_path(orig)) {
                const char *work_tree = get_git_work_tree();
                size_t len = strlen(work_tree);
                size_t total = strlen(sanitized) + 1;
@@ -446,6 +446,8 @@ int check_repository_format_version(const char *var, const char *value)
                if (is_bare_repository_cfg == 1)
                        inside_work_tree = -1;
        } else if (strcmp(var, "core.worktree") == 0) {
+               if (!value)
+                       return config_error_nonbool(var);
                if (git_work_tree_cfg)
                        free(git_work_tree_cfg);
                git_work_tree_cfg = xstrdup(value);