]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-shared.c
Add cgit_commit_link() + support for id=sha1 to commit view
[ps-cgit] / ui-shared.c
index 64ee79c16a87b5feea6b5b9ed3e2a9c96872e762..71c899a12bd72ab068a84358931505fd35780cd7 100644 (file)
@@ -136,8 +136,8 @@ static char *repolink(char *title, char *class, char *page, char *head,
        return fmt("%s", delim);
 }
 
        return fmt("%s", delim);
 }
 
-static char *reporevlink(char *page, char *name, char *title, char *class,
-                        char *head, char *rev, char *path)
+static void reporevlink(char *page, char *name, char *title, char *class,
+                       char *head, char *rev, char *path)
 {
        char *delim;
 
 {
        char *delim;
 
@@ -164,6 +164,18 @@ void cgit_log_link(char *name, char *title, char *class, char *head,
        reporevlink("log", name, title, class, head, rev, path);
 }
 
        reporevlink("log", name, title, class, head, rev, path);
 }
 
+void cgit_commit_link(char *name, char *title, char *class, char *head,
+                     char *rev)
+{
+       if (strlen(name) > cgit_max_msg_len && cgit_max_msg_len >= 15) {
+               name[cgit_max_msg_len] = '\0';
+               name[cgit_max_msg_len - 1] = '.';
+               name[cgit_max_msg_len - 2] = '.';
+               name[cgit_max_msg_len - 3] = '.';
+       }
+       reporevlink("commit", name, title, class, head, rev, NULL);
+}
+
 void cgit_print_date(time_t secs, char *format)
 {
        char buf[64];
 void cgit_print_date(time_t secs, char *format)
 {
        char buf[64];