This fixes this bug:
The problem is that you can't, in general, determine whether two files are the same by doing a string comparison of their paths (there are issues with symbolic links, etc). The MSDN documentation for GetFileInformationByHandle() suggests another method:
"You can compare the VolumeSerialNumber and FileIndex members returned in the BY_HANDLE_FILE_INFORMATION structure to determine if two paths map to the same target; for example, you can compare two file paths and determine if they map to the same directory."
( http://msdn.microsoft.com/en-us/library/aa364952%28VS.85%29.aspx )
I've attached a patch.