Web lists-archives.com

scandirat return dirents of parent dir




Hello:
     I've found this problem when compile
casync(https://github.com/systemd/casync.git) in cygwin,workflow to
trigger this :
    rootfd=open(".",O_CLOEXEC|O_RDONLY|O_NOCTTY);
    scandirat(rootfd,".", firstLevelDirEnts......);
    foreach dirent in firstLevelDirEnts:
         if dirent is dir:
             subdirfd=openat(rootfd,
                  dirent->d_name,O_RDONLY|O_CLOEXEC|O_NOCTTY|O_NOFOLLOW);
             scandirat(subdirfd,".",  secondLevelDirEnts......);

     at this time, secondLevelDirEnts should be files in subdir, but
in cygwin, secondLevelDirEnts is just same as firstLevelDirEnts.

      This problem didn't happen in linux , nor win10 WSL,  but
happens in both cygwin/msys2.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple