X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=test-delta.c;h=3d885ff37ee7fc43dec05dd827679d68cee5516b;hb=10455d2a955a29db1809be139177e4e298771eb0;hp=8751e27c6b2acd875803402383e50dbab56d3e56;hpb=a310d4349467d78266f38d29e500c77b96ee5bef;p=git.git diff --git a/test-delta.c b/test-delta.c index 8751e27c6..3d885ff37 100644 --- a/test-delta.c +++ b/test-delta.c @@ -8,16 +8,11 @@ * published by the Free Software Foundation. */ -#include -#include -#include -#include -#include -#include -#include +#include "git-compat-util.h" #include "delta.h" +#include "cache.h" -static const char *usage = +static const char usage_str[] = "test-delta (-d|-p) "; int main(int argc, char *argv[]) @@ -28,7 +23,7 @@ int main(int argc, char *argv[]) unsigned long from_size, data_size, out_size; if (argc != 5 || (strcmp(argv[1], "-d") && strcmp(argv[1], "-p"))) { - fprintf(stderr, "Usage: %s\n", usage); + fprintf(stderr, "Usage: %s\n", usage_str); return 1; } @@ -41,6 +36,7 @@ int main(int argc, char *argv[]) from_buf = mmap(NULL, from_size, PROT_READ, MAP_PRIVATE, fd, 0); if (from_buf == MAP_FAILED) { perror(argv[2]); + close(fd); return 1; } close(fd); @@ -54,23 +50,26 @@ int main(int argc, char *argv[]) data_buf = mmap(NULL, data_size, PROT_READ, MAP_PRIVATE, fd, 0); if (data_buf == MAP_FAILED) { perror(argv[3]); + close(fd); return 1; } close(fd); if (argv[1][1] == 'd') out_buf = diff_delta(from_buf, from_size, - data_buf, data_size, &out_size); + data_buf, data_size, + &out_size, 0); else out_buf = patch_delta(from_buf, from_size, - data_buf, data_size, &out_size); + data_buf, data_size, + &out_size); if (!out_buf) { fprintf(stderr, "delta operation failed (returned NULL)\n"); return 1; } fd = open (argv[4], O_WRONLY|O_CREAT|O_TRUNC, 0666); - if (fd < 0 || write(fd, out_buf, out_size) != out_size) { + if (fd < 0 || write_in_full(fd, out_buf, out_size) != out_size) { perror(argv[4]); return 1; }