From: Wayne Davison Date: Tue, 17 Feb 2004 21:57:44 +0000 (+0000) Subject: Don't create a pathname that has two leading slashes (which we used X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/commitdiff_plain/421c2a24485f78a1f2f549f5f19e358148a77b78 Don't create a pathname that has two leading slashes (which we used to do when the root of the transfer was "/"). --- diff --git a/sender.c b/sender.c index e73ae62f..51ceff46 100644 --- a/sender.c +++ b/sender.c @@ -157,10 +157,11 @@ void send_files(struct file_list *flist, int f_out, int f_in) stats.num_transferred_files++; stats.total_transferred_size += file->length; - fname[0] = 0; if (file->basedir) { - offset = stringjoin(fname, sizeof fname, - file->basedir, "/", NULL); + /* N.B. We're sure that this fits, so offset is OK. */ + offset = strlcpy(fname, file->basedir, sizeof fname); + if (!offset || fname[offset-1] != '/') + fname[offset++] = '/'; } else offset = 0; f_name_to(file, fname + offset);