]> gitweb.ps.run Git - ps-cgit/blobdiff - ui-diff.c
ssdiff: anchors for ssdiff
[ps-cgit] / ui-diff.c
index 0dcabe90b9931e4b53e009a89b9853dcf3ab8c76..a53425dbf069fee2de38f621528c2e6753beba51 100644 (file)
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -34,6 +34,17 @@ static struct fileinfo {
 } *items;
 
 static int use_ssdiff = 0;
 } *items;
 
 static int use_ssdiff = 0;
+static struct diff_filepair *current_filepair;
+
+struct diff_filespec *cgit_get_current_old_file(void)
+{
+       return current_filepair->one;
+}
+
+struct diff_filespec *cgit_get_current_new_file(void)
+{
+       return current_filepair->two;
+}
 
 static void print_fileinfo(struct fileinfo *info)
 {
 
 static void print_fileinfo(struct fileinfo *info)
 {
@@ -92,7 +103,7 @@ static void print_fileinfo(struct fileinfo *info)
                      info->old_path);
        html("</td><td class='right'>");
        if (info->binary) {
                      info->old_path);
        html("</td><td class='right'>");
        if (info->binary) {
-               htmlf("bin</td><td class='graph'>%d -> %d bytes",
+               htmlf("bin</td><td class='graph'>%ld -> %ld bytes",
                      info->old_size, info->new_size);
                return;
        }
                      info->old_size, info->new_size);
                return;
        }
@@ -284,6 +295,7 @@ static void filepair_cb(struct diff_filepair *pair)
        int binary = 0;
        linediff_fn print_line_fn = print_line;
 
        int binary = 0;
        linediff_fn print_line_fn = print_line;
 
+       current_filepair = pair;
        if (use_ssdiff) {
                cgit_ssdiff_header_begin();
                print_line_fn = cgit_ssdiff_line_cb;
        if (use_ssdiff) {
                cgit_ssdiff_header_begin();
                print_line_fn = cgit_ssdiff_line_cb;