diff -u -r --new-file --exclude=CVS rsync-1.7.2/cvs.log rsync-1.7.3/cvs.log --- rsync-1.7.2/cvs.log Sun Apr 5 16:46:16 1998 +++ rsync-1.7.3/cvs.log Mon Apr 13 17:01:04 1998 @@ -2326,3 +2326,69 @@ Log Message: preparing for release of 1.7.2 + +**************************************** +Date: Thursday April 9, 1998 @ 10:38 +Author: tridge + +Update of /data/cvs/rsync +In directory samba:/tmp/cvs-serv4998 + +Modified Files: + flist.c +Log Message: + +fixed a bug in handling the -c option and non-regular files. It hadn't +turned up before because Linux had a bug in the handling of NULL +pointers to read()/write() on pipes, so I never noticed the bug in my +testing. + +I've also sent a patch to Linus. + + + +**************************************** +Date: Monday April 13, 1998 @ 14:44 +Author: tridge + +Update of /data/cvs/rsync +In directory samba:/tmp/cvs-serv23368 + +Modified Files: + main.c +Log Message: + +not quite so many decimal places in "speedup" :-) + + + +**************************************** +Date: Monday April 13, 1998 @ 16:39 +Author: tridge + +Update of /data/cvs/rsync +In directory samba:/tmp/cvs-serv948 + +Modified Files: + rsync.c +Log Message: + +fixed a bug in the handling of -R with --delete + +I introduced this bug in the last version as a side effect of fixing +the permissions on intermediate directories with -R. drat. + + + +**************************************** +Date: Monday April 13, 1998 @ 17:00 +Author: rsync-bu + +Update of /data/cvs/rsync +In directory samba:/data/people/rsync-bugs/rsync + +Modified Files: + version.h +Log Message: +preparing for release of 1.7.3 + diff -u -r --new-file --exclude=CVS rsync-1.7.2/flist.c rsync-1.7.3/flist.c --- rsync-1.7.2/flist.c Sun Apr 5 16:10:29 1998 +++ rsync-1.7.3/flist.c Mon Apr 13 16:42:13 1998 @@ -209,7 +209,7 @@ #endif if (always_checksum) { - write_buf(f,file->sum,csum_length); + write_buf(f,file->sum,csum_length); } last_mode = file->mode; @@ -426,10 +426,17 @@ } #endif - if (always_checksum && S_ISREG(st.st_mode)) { + if (always_checksum) { file->sum = (char *)malloc(MD4_SUM_LENGTH); if (!file->sum) out_of_memory("md4 sum"); - file_checksum(fname,file->sum,st.st_size); + /* drat. we have to provide a null checksum for non-regular + files in order to be compatible with earlier versions + of rsync */ + if (S_ISREG(st.st_mode)) { + file_checksum(fname,file->sum,st.st_size); + } else { + memset(file->sum, 0, MD4_SUM_LENGTH); + } } if (flist_dir) { diff -u -r --new-file --exclude=CVS rsync-1.7.2/main.c rsync-1.7.3/main.c --- rsync-1.7.2/main.c Sun Apr 5 16:45:20 1998 +++ rsync-1.7.3/main.c Mon Apr 13 16:42:13 1998 @@ -92,14 +92,14 @@ } #if HAVE_LONGLONG - printf("wrote %lld bytes read %lld bytes %g bytes/sec\n", + printf("wrote %lld bytes read %lld bytes %.2f bytes/sec\n", (long long)out,(long long)in,(in+out)/(0.5 + (t-starttime))); - printf("total size is %lld speedup is %g\n", + printf("total size is %lld speedup is %.2f\n", (long long)tsize,(1.0*tsize)/(in+out)); #else - printf("wrote %ld bytes read %ld bytes %g bytes/sec\n", + printf("wrote %ld bytes read %ld bytes %.2f bytes/sec\n", (long)out,(long)in,(in+out)/(0.5 + (t-starttime))); - printf("total size is %ld speedup is %g\n", + printf("total size is %ld speedup is %.2f\n", (long)tsize,(1.0*tsize)/(in+out)); #endif } diff -u -r --new-file --exclude=CVS rsync-1.7.2/rsync.c rsync-1.7.3/rsync.c --- rsync-1.7.2/rsync.c Sun Apr 5 16:45:21 1998 +++ rsync-1.7.3/rsync.c Mon Apr 13 16:42:13 1998 @@ -649,6 +649,8 @@ exit_cleanup(1); } + name[strlen(name)-2] = 0; + p = strrchr(name,'/'); if (!p) { free(name); @@ -656,6 +658,8 @@ } *p = 0; + strcat(name,"/."); + while (low != high) { int mid = (low+high)/2; int ret = strcmp(f_name(flist->files[flist_up(flist, mid)]),name); @@ -702,6 +706,8 @@ char *name = f_name(flist->files[j]); if (!S_ISDIR(flist->files[j]->mode)) continue; + + if (strlen(name)<2 || strcmp(name+strlen(name)-2,"/.")!=0) continue; if (delete_already_done(flist, j)) continue; diff -u -r --new-file --exclude=CVS rsync-1.7.2/version.h rsync-1.7.3/version.h --- rsync-1.7.2/version.h Sun Apr 5 16:46:10 1998 +++ rsync-1.7.3/version.h Mon Apr 13 17:00:52 1998 @@ -1 +1 @@ -#define VERSION "1.7.2" +#define VERSION "1.7.3"