/* test: { sleep 1; echo -en '\en'; sleep 1; echo -n foo/bar; sleep 1; echo; sleep 1; echo; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe */
/* Rename */
-/* test: touch .a && { sleep 1; echo -en 'k\er'; sleep 1; echo .aa; sleep 1; echo -en '\er'; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .aa */
+/* test: touch .a && { sleep 1; echo -en 'k\er'; sleep 1; echo .aa; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .aa */
+/* test: touch .a && { sleep 1; echo -en 'k\er'; sleep 1; echo -e '\e'; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .a */
/* test: touch .a && { sleep 1; echo -en 'k\er'; sleep 1; echo .c/1; sleep 1; echo; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .a */
-/* test: touch .a && mkdir .b && { sleep 1; echo -en 'k\er'; sleep 1; echo .b/.a; sleep 1; echo; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .a && mkdir .b */
+/* test: touch .a && mkdir .b && { sleep 1; echo -en 'k\er'; sleep 1; echo .b/.a; sleep 1; echo; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .a && rmdir .b */
/* test: touch .a .b && { sleep 1; echo -en 'k\er'; sleep 1; echo .b; sleep 1; echo; sleep 1; echo -en '\eq'; sleep 1; echo -n y; } | fm.exe && rm .a .b */
/* Move */
char *msg = NULL;
struct stat sb;
- int rc = STAT (dest, &sb);
errno = 0;
+ int rc = STAT (dest, &sb);
if ((rc == -1) && (errno == ENOENT)) {
if (rename (src, dest) != 0) {
msg = strdupcat ("Can't move '", src, "' to '", dest, "'", NULL);
} else if (rc == 0) {
msg = strdupcat ("File '", dest, "' exists", NULL);
} else {
- VERBOSE (ERROR, fprintf (stderr, "can't stat on file '%s'\n", src));
+ VERBOSE (ERROR, fprintf (stderr, "can't stat on file '%s' (%d-%d)\n", src, rc, errno));
exit (1);
}
errno = 0;