]> gitweb.ps.run Git - ps-cgit/commitdiff
ui-shared: shorten the sha1 printed by cgit_object_link
authorLars Hjemli <hjemli@gmail.com>
Mon, 1 Dec 2008 20:58:59 +0000 (21:58 +0100)
committerLars Hjemli <hjemli@gmail.com>
Mon, 1 Dec 2008 21:01:26 +0000 (22:01 +0100)
Such links was printed as the object type followed by the objects complete
sha1. We still use the complete sha1 in the link but we no longer show it
in all its glory; only the first 10 hex chars are printed.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
ui-shared.c

index c4a506e390c9b5b60d1f1ace8a3fa4f13990e4cb..9319881de108132650bc026bd90f3548162bdbd7 100644 (file)
@@ -365,11 +365,14 @@ void cgit_patch_link(char *name, char *title, char *class, char *head,
 
 void cgit_object_link(struct object *obj)
 {
-       char *page, *rev, *name;
+       char *page, *shortrev, *fullrev, *name;
 
+       fullrev = sha1_to_hex(obj->sha1);
+       shortrev = xstrdup(fullrev);
+       shortrev[10] = '\0';
        if (obj->type == OBJ_COMMIT) {
-                cgit_commit_link(fmt("commit %s", sha1_to_hex(obj->sha1)), NULL, NULL,
-                                ctx.qry.head, sha1_to_hex(obj->sha1));
+                cgit_commit_link(fmt("commit %s...", shortrev), NULL, NULL,
+                                ctx.qry.head, fullrev);
                return;
        } else if (obj->type == OBJ_TREE)
                page = "tree";
@@ -377,9 +380,8 @@ void cgit_object_link(struct object *obj)
                page = "tag";
        else
                page = "blob";
-       rev = sha1_to_hex(obj->sha1);
-       name = fmt("%s %s", typename(obj->type), rev);
-       reporevlink(page, name, NULL, NULL, ctx.qry.head, rev, NULL);
+       name = fmt("%s %s...", typename(obj->type), shortrev);
+       reporevlink(page, name, NULL, NULL, ctx.qry.head, fullrev, NULL);
 }
 
 void cgit_print_date(time_t secs, char *format, int local_time)