Commit 21914d81 authored by Wayne Davison's avatar Wayne Davison

Made clean_flist() only duplicate *_DIR_* flags on a dropped dir

when the kept entry is also a dir.
parent 200aec7d
......@@ -2392,6 +2392,8 @@ static void clean_flist(struct file_list *flist, int strip_root)
else {
if (am_sender)
file->flags |= FLAG_DUPLICATE;
else /* Make sure we don't lose vital flags. */
fp->flags |= file->flags & (FLAG_TOP_DIR|FLAG_XFER_DIR);
keep = j, drop = i;
}
} else
......@@ -2403,11 +2405,6 @@ static void clean_flist(struct file_list *flist, int strip_root)
"removing duplicate name %s from file list (%d)\n",
f_name(file, fbuf), drop + flist->ndx_start);
}
/* Make sure we don't lose track of a user-specified
* top directory. */
flist->sorted[keep]->flags |= flist->sorted[drop]->flags
& (FLAG_TOP_DIR|FLAG_XFER_DIR);
clear_file(flist->sorted[drop]);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment