From: Wayne Davison Date: Thu, 19 Jan 2006 18:53:48 +0000 (+0000) Subject: In delete_in_dir(), skip a directory that isn't really a directory on X-Git-Tag: v2.6.7pre1~228 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b8595e609a45f703de523a1022fada376141e5d3;p=thirdparty%2Frsync.git In delete_in_dir(), skip a directory that isn't really a directory on the local disk (can easily happen if --dry-run was specified). --- diff --git a/generator.c b/generator.c index a4b9b0da..afa56a2a 100644 --- a/generator.c +++ b/generator.c @@ -261,7 +261,7 @@ static void delete_in_dir(struct file_list *flist, char *fbuf, dlen = strlen(fbuf); filt_array[cur_depth] = push_local_filters(fbuf, dlen); - if (link_stat(fbuf, &st, keep_dirlinks) < 0) + if (link_stat(fbuf, &st, keep_dirlinks) < 0 || !S_ISDIR(st.st_mode)) return; if (one_file_system) {