ident.c: add support for IPv6
[gitweb.git] / test-path-utils.c
index 8a6d22404e186521d495d9d4d244d0ac42048381..c67bf65b347810c576f80a0ac33e3b84f42e1516 100644 (file)
@@ -21,8 +21,6 @@ static int normalize_ceiling_entry(struct string_list_item *item, void *unused)
        if (normalize_path_copy(buf, ceil) < 0)
                die("Path \"%s\" could not be normalized", ceil);
        len = strlen(buf);
-       if (len > 1 && buf[len-1] == '/')
-               die("Normalized path \"%s\" ended with slash", buf);
        free(item->string);
        item->string = xstrdup(buf);
        return 1;
@@ -116,15 +114,22 @@ int main(int argc, char **argv)
                return 0;
        }
 
+       if (argc == 3 && !strcmp(argv[1], "print_path")) {
+               puts(argv[2]);
+               return 0;
+       }
+
        if (argc == 4 && !strcmp(argv[1], "relative_path")) {
+               struct strbuf sb = STRBUF_INIT;
                const char *in, *prefix, *rel;
                normalize_argv_string(&in, argv[2]);
                normalize_argv_string(&prefix, argv[3]);
-               rel = relative_path(in, prefix);
+               rel = relative_path(in, prefix, &sb);
                if (!rel)
                        puts("(null)");
                else
                        puts(strlen(rel) > 0 ? rel : "(empty)");
+               strbuf_release(&sb);
                return 0;
        }