This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

du crashes if .lnk symlink and a folder it points to are named the same, differing only in letter case


I needed that because one git repository has branches named
"Epam/a" and "epam/b", and git was always creating the "missing" epam
directory at fetch.

$ ls -l
total 0
drwxr-xr-x+ 1 adminpwd None 0 Mar 25 11:42 Epam
drwxr-xr-x+ 1 adminpwd None 0 Mar 25 11:42 epam

why no " -> Epam" part? 'ls' behaves funny too, but at least it
doesn't crash.


$ ls -l epam.lnk
lrwxrwxrwx 1 Users None 4 Mar 13 16:43 epam.lnk -> Epam

$ du .
0       ./Epam
Aborted (core dumped)

crash caused by abort() called from here:

coreutils-8.15/lib/fts-cycle.c:
static void
leave_dir (FTS *fts, FTSENT *ent)
{
  struct stat const *st = ent->fts_statp;
  if (fts->fts_options & (FTS_TIGHT_CYCLE_CHECK | FTS_LOGICAL))
    {
      struct Active_dir obj;
      void *found;
      obj.dev = st->st_dev;
      obj.ino = st->st_ino;
      found = hash_delete (fts->fts_cycle.ht, &obj);
      if (!found)
        abort (); <-- here

Attachment: cygcheck.out
Description: Binary data

--
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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]