← Back to team overview

linuxdcpp-team team mailing list archive

[Bug 311818] Re: Sharing duplicates

 

rev 3158: re-hashing won't actually be necessary on Windows >= Vista (as
long as hashed files don't have a case-insensitive dupe, which is very
unlikely on Windows).

i have also been able to test downloading with the above changes;
everything seems to be going smoothly. :)

notes for Linux devs:
- make sure the same files are always renamed after a share refresh; otherwise, "file not found" errors are going to pop on peers trying to download renamed files. this is not an issue on Windows because the directory iterator always reads directories in the same order (eg A.txt always comes before a.txt, so a.txt will always be the one to be renamed to "a (1).txt"); but i don't know if opendir/readdir etc respect that on Linux.
- try to implement the hash upgrading logic in dcpp/HashManager.cpp:431, function upgradeFromV2. it's been left as a todo for now.

** Changed in: dcplusplus
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of
Dcplusplus-team, which is subscribed to DC++.
https://bugs.launchpad.net/bugs/311818

Title:
  Sharing duplicates

Status in DC++:
  Fix Committed
Status in Linux DC++:
  Confirmed

Bug description:
  Unix systems have case-sensitive file-systems. The core however converts all file and directory-names to lower case. Which gives problems if files are shared with the same text and different cases. 
  example:
  In the share there's a file fubar.txt and a file Fubar.txt. Then these two files will be hashed every time dc is started.

  I don't know why all filenames are converted to lower case for
  Windows, but for other OS's it's not wanted. So I've added a possible
  fix which checks for OS.

To manage notifications about this bug go to:
https://bugs.launchpad.net/dcplusplus/+bug/311818/+subscriptions