Subject: bug#78509: Coreutils' mv and cp 9.5 do not work properly on old PPC Mac OS X 10.4.11, Tiger

From: Peter Dyballa <[email-masked]>
Date: Sat, 24 May 2025 09:51:37 +0200

> Am 24.05.2025 um 09:44 schrieb Paul Eggert <[email-masked]>:
> 
> 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.

You are saying that the GNUlib function target_directory_operand() is known to fail when the target of cp or mv is a file? So I do not need to debug further?

And yes, I am debugging in coreutils-9.7/src with Gdb "./mv k out" where k and out were created by "./touch k out".

--
Greetings

  Pete

If all else fails read the instructions.
- Donald Knuth