On 2025-05-23 04:27, Peter Dyballa wrote:
458 {
459 int fd = target_directory_operand (lastfile, &sb);
460 if (target_dirfd_valid (fd))
461 {
462 x.rename_errno = -1;
463 target_dirfd = fd;
464 target_directory = lastfile;
465 n_files--;
466 }
467 else
468 {
...
484 }
485 }
Here x.rename_errno is (re)set to -1 although already != 0,
If this is "mv k out" where "out" is not a directory, then you're
closing in on the bug. target_directory_operand is supposed to fail
(i.e., return a value for which target_dirfd_valid is false) if LASTFILE
is not a directory, and LASTFILE is "out" here.