Fixed a comparation report text problem with files of 4 GiB or larger. Thanks Eliska Svobodova.
This commit is contained in:
@ -103,6 +103,7 @@ int Compare_2_files(char *adr1, char *adr2, char *adrc, int flag)
|
||||
int ret, differs= 0, r1, r2, fd1= -1, fd2= -1, i, done;
|
||||
char buf1[4096], buf2[4096], a[4096], ttx1[40], ttx2[40];
|
||||
off_t r1count= 0, r2count= 0, diffcount= 0, first_diff= -1;
|
||||
double dcount;
|
||||
|
||||
ret= lstat(adr1, &s1);
|
||||
if(ret==-1) {
|
||||
@ -241,9 +242,13 @@ int Compare_2_files(char *adr1, char *adr2, char *adrc, int flag)
|
||||
if(diffcount>0 || r1count!=r2count) {
|
||||
if(first_diff<0)
|
||||
first_diff= (r1count>r2count ? r2count : r1count);
|
||||
if(r1count > r2count)
|
||||
dcount= diffcount + (r1count - r2count);
|
||||
else
|
||||
dcount= diffcount + (r2count - r1count);
|
||||
printf("%s : %s : differs by at least %.f bytes. First at %.f\n", a,
|
||||
(s1.st_mtime==s2.st_mtime ? "CONTENT":"content"),
|
||||
(double) (diffcount + abs(r1count-r2count)), (double) first_diff);
|
||||
dcount, (double) first_diff);
|
||||
differs= 1;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user