diff options
| author | Ragnar Ouchterlony <ragnar@lysator.liu.se> | 2009-09-16 18:56:26 +0200 | 
|---|---|---|
| committer | Lars Hjemli <hjemli@gmail.com> | 2009-09-16 20:17:56 +0200 | 
| commit | 4a198e4b8ee62a9a8b5156a46bfce46dc7223fe9 (patch) | |
| tree | c6389de8ae75cf907ed3884e87ee554d80498145 /ui-diff.c | |
| parent | Polishing of how the side-by-side diff looks. (diff) | |
| download | cgit-4a198e4b8ee62a9a8b5156a46bfce46dc7223fe9.tar.gz cgit-4a198e4b8ee62a9a8b5156a46bfce46dc7223fe9.tar.bz2 cgit-4a198e4b8ee62a9a8b5156a46bfce46dc7223fe9.zip | |
Fixed side-by-side diff bugs related to binary diff and more.
The fixed bugs:
 * "Binary files differ" did not show up either in unidiff or
   side-by-side-diff.
 * Subproject diffs did not work for side-by-side diffs.
 * The ssdiff link on diff pages did not conserve the path.
Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to '')
| -rw-r--r-- | ui-diff.c | 14 | 
1 files changed, 10 insertions, 4 deletions
| @@ -253,11 +253,11 @@ static void print_ssdiff_link()  	if (!strcmp(ctx.qry.page, "diff")) {  		if (use_ssdiff)  			cgit_diff_link("Unidiff", NULL, NULL, ctx.qry.head, -				       ctx.qry.sha1, ctx.qry.sha2, NULL, 1); +				       ctx.qry.sha1, ctx.qry.sha2, ctx.qry.path, 1);  		else  			cgit_diff_link("Side-by-side diff", NULL, NULL,  				       ctx.qry.head, ctx.qry.sha1, -				       ctx.qry.sha2, NULL, 1); +				       ctx.qry.sha2, ctx.qry.path, 1);  	}  } @@ -281,13 +281,19 @@ static void filepair_cb(struct diff_filepair *pair)  			print_line_fn(fmt("-Subproject %s", sha1_to_hex(pair->one->sha1)), 52);  		if (S_ISGITLINK(pair->two->mode))  			print_line_fn(fmt("+Subproject %s", sha1_to_hex(pair->two->sha1)), 52); +		if (use_ssdiff) +			cgit_ssdiff_footer();  		return;  	}  	if (cgit_diff_files(pair->one->sha1, pair->two->sha1, &old_size,  			    &new_size, &binary, print_line_fn))  		cgit_print_error("Error running diff"); -	if (binary) -		print_line_fn(" Binary files differ", 20); +	if (binary) { +		if (use_ssdiff) +			html("<tr><td colspan='4'>Binary files differ</td></tr>"); +		else +			html("Binary files differ"); +	}  	if (use_ssdiff)  		cgit_ssdiff_footer();  } | 
