X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=sbr%2Ffdcompare.c;h=72dff995d5f5b3382703c2287de69f5cf41ea6b7;hp=38174e021b77566b4efd0b2909be933f3debf68a;hb=a485ed478abbd599d8c9aab48934e7a26733ecb1;hpb=f480c03187724e54e5391ee61b810827da319a6c diff --git a/sbr/fdcompare.c b/sbr/fdcompare.c index 38174e0..72dff99 100644 --- a/sbr/fdcompare.c +++ b/sbr/fdcompare.c @@ -1,4 +1,3 @@ - /* * fdcompare.c -- are two files identical? * @@ -13,28 +12,28 @@ int fdcompare (int fd1, int fd2) { - register int i, n1, n2, resp; - register char *c1, *c2; - char b1[BUFSIZ], b2[BUFSIZ]; + register int i, n1, n2, resp; + register char *c1, *c2; + char b1[BUFSIZ], b2[BUFSIZ]; - resp = 1; - while ((n1 = read (fd1, b1, sizeof(b1))) >= 0 - && (n2 = read (fd2, b2, sizeof(b2))) >= 0 - && n1 == n2) { - c1 = b1; - c2 = b2; - for (i = n1 < sizeof(b1) ? n1 : sizeof(b1); i--;) - if (*c1++ != *c2++) { - resp = 0; - goto leave; - } - if (n1 < sizeof(b1)) - goto leave; - } - resp = 0; + resp = 1; + while ((n1 = read (fd1, b1, sizeof(b1))) >= 0 + && (n2 = read (fd2, b2, sizeof(b2))) >= 0 + && n1 == n2) { + c1 = b1; + c2 = b2; + for (i = n1 < sizeof(b1) ? n1 : sizeof(b1); i--;) + if (*c1++ != *c2++) { + resp = 0; + goto leave; + } + if (n1 < sizeof(b1)) + goto leave; + } + resp = 0; leave: ; - lseek (fd1, (off_t) 0, SEEK_SET); - lseek (fd2, (off_t) 0, SEEK_SET); - return resp; + lseek (fd1, (off_t) 0, SEEK_SET); + lseek (fd2, (off_t) 0, SEEK_SET); + return resp; }