]> granicus.if.org Git - cgit/commitdiff
ui-summary.c: Move urls variable into print_urls()
authorLukas Fleischer <cgit@cryptocrack.de>
Tue, 5 Mar 2013 15:48:27 +0000 (16:48 +0100)
committerJason A. Donenfeld <Jason@zx2c4.com>
Wed, 20 Mar 2013 20:08:32 +0000 (21:08 +0100)
There's no need for this variable to be global. Printing the header in
print_urls() instead of print_url() allows for moving this variable into
print_urls() without having to pass any status to print_url().

Note that this only works as long as we don't call print_urls() more
than once.

Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>
ui-summary.c

index 38639cef31157c5b764a09321e7855aa2bfc8f9a..0754bb7f99b8eee1f5febdb902b49e2c57470c82 100644 (file)
@@ -13,8 +13,6 @@
 #include "ui-refs.h"
 #include "ui-blob.h"
 
-int urls = 0;
-
 static void print_url(char *base, char *suffix)
 {
        int columns = 3;
@@ -26,10 +24,6 @@ static void print_url(char *base, char *suffix)
 
        if (!base || !*base)
                return;
-       if (urls++ == 0) {
-               htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns);
-               htmlf("<tr><th class='left' colspan='%d'>Clone</th></tr>\n", columns);
-       }
        if (suffix && *suffix)
                base = fmt("%s/%s", base, suffix);
        htmlf("<tr><td colspan='%d'><a href='", columns);
@@ -42,15 +36,29 @@ static void print_url(char *base, char *suffix)
 static void print_urls(char *txt, char *suffix)
 {
        char *h = txt, *t, c;
+       int urls = 0;
+       int columns = 3;
+
+       if (ctx.repo->enable_log_filecount)
+               columns++;
+       if (ctx.repo->enable_log_linecount)
+               columns++;
+
 
        while (h && *h) {
                while (h && *h == ' ')
                        h++;
+               if (!*h)
+                       break;
                t = h;
                while (t && *t && *t != ' ')
                        t++;
                c = *t;
                *t = 0;
+               if (urls++ == 0) {
+                       htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns);
+                       htmlf("<tr><th class='left' colspan='%d'>Clone</th></tr>\n", columns);
+               }
                print_url(h, suffix);
                *t = c;
                h = t;