/** Copy a file.
*
- * This is used in conjunction with the --temp-dir and --backup options */
+ * This is used in conjunction with the --temp-dir, --backup, and
+ * --copy-dest options. */
int copy_file(char *source, char *dest, mode_t mode)
{
int ifd;
break;
s_len = fn_len - (s - fn);
fn_len = s - fn;
- if (s_len == 3) {
+ if (s_len == 4) {
if (strcmp(s+1, "bak") == 0
|| strcmp(s+1, "old") == 0)
continue;
- } else if (s_len == 4) {
+ } else if (s_len == 5) {
if (strcmp(s+1, "orig") == 0)
continue;
} else if (s_len > 2 && had_tilde