diff options
author | Lars Hjemli <hjemli@gmail.com> | 2009-02-02 03:29:47 (JST) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2009-02-02 03:29:47 (JST) |
commit | 5e447b1ed1aa751e8ec93dccf4df6fa4a7ffddb6 (patch) | |
tree | 823678b1c4a907cf0df50067c27fb5b752114df5 /shared.c | |
parent | 0b3c746ba80738dbe0885a21406409390936537c (diff) | |
parent | 481ce5e298e2dcd7edc1d4a30e523dda2ce58b01 (diff) | |
download | cgit-5e447b1ed1aa751e8ec93dccf4df6fa4a7ffddb6.zip cgit-5e447b1ed1aa751e8ec93dccf4df6fa4a7ffddb6.tar.gz |
Merge branch 'lh/binary'
Diffstat (limited to 'shared.c')
-rw-r--r-- | shared.c | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -257,8 +257,8 @@ int filediff_cb(void *priv, mmbuffer_t *mb, int nbuf) | |||
257 | } | 257 | } |
258 | 258 | ||
259 | int cgit_diff_files(const unsigned char *old_sha1, | 259 | int cgit_diff_files(const unsigned char *old_sha1, |
260 | const unsigned char *new_sha1, | 260 | const unsigned char *new_sha1, unsigned long *old_size, |
261 | linediff_fn fn) | 261 | unsigned long *new_size, int *binary, linediff_fn fn) |
262 | { | 262 | { |
263 | mmfile_t file1, file2; | 263 | mmfile_t file1, file2; |
264 | xpparam_t diff_params; | 264 | xpparam_t diff_params; |
@@ -268,6 +268,15 @@ int cgit_diff_files(const unsigned char *old_sha1, | |||
268 | if (!load_mmfile(&file1, old_sha1) || !load_mmfile(&file2, new_sha1)) | 268 | if (!load_mmfile(&file1, old_sha1) || !load_mmfile(&file2, new_sha1)) |
269 | return 1; | 269 | return 1; |
270 | 270 | ||
271 | *old_size = file1.size; | ||
272 | *new_size = file2.size; | ||
273 | |||
274 | if ((file1.ptr && buffer_is_binary(file1.ptr, file1.size)) || | ||
275 | (file2.ptr && buffer_is_binary(file2.ptr, file2.size))) { | ||
276 | *binary = 1; | ||
277 | return 0; | ||
278 | } | ||
279 | |||
271 | memset(&diff_params, 0, sizeof(diff_params)); | 280 | memset(&diff_params, 0, sizeof(diff_params)); |
272 | memset(&emit_params, 0, sizeof(emit_params)); | 281 | memset(&emit_params, 0, sizeof(emit_params)); |
273 | memset(&emit_cb, 0, sizeof(emit_cb)); | 282 | memset(&emit_cb, 0, sizeof(emit_cb)); |