bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: canonicalize test failures on Cygwin


From: Ken Brown
Subject: Re: canonicalize test failures on Cygwin
Date: Sun, 17 Jan 2021 20:45:22 -0500
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.1

On 1/17/2021 11:04 AM, Bruno Haible wrote:
Hi Paul,

Some of the new tests that you added to test-canonicalize.c and
test-canonicalize-lgpl.c on 2020-12-24 fail on Cygwin 2.9:

   /* Check that a non-directory symlink with trailing slash yields NULL,
      and likewise for other troublesome suffixes.  */
   {
     char const *const file_name[]
       = {
          BASE "/huk/",
          BASE "/huk/.",
          BASE "/huk/./",
          BASE "/huk/./.",
          BASE "/huk/x",
          BASE "/huk/..",
          BASE "/huk/../",
          BASE "/huk/../.",
          BASE "/huk/../x",
          BASE "/huk/./..",
          BASE "/huk/././../x",
         };
     for (int i = 0; i < sizeof file_name / sizeof *file_name; i++)
       {
         ...

The tests in the 'for' loop fail for i = 5 ... 10. That is, something
with the ".." handling is not working as expected.

I took a quick look, and it appears that this is a Cygwin bug in which realpath() fails with ENOENT instead of ENOTDIR. (I've only checked this for the first failure, but I suspect it's the same for all of them.) I'll submit a patch to Cygwin to fix this, probably tomorrow.

Ken



reply via email to

[Prev in Thread] Current Thread [Next in Thread]