if (stat( entry->mnt_mountp, &st ) == -1) continue; if (st.st_dev != dev || st.st_ino != ino) continue;
should be if (stat( entry->mnt_mountp, &st ) == -1) continue; if (st.st_dev != dev) continue;
SInce currently the code is looking for the dev AND inode of the target of the link to be the same as the mount directory of a filesystem ?
you don't want to manipulate as a device if the root of the disk in Win32 isn't at the mount point (in Unix world), hence the test on the inode.
A+