← Back to team overview

linuxdcpp-team team mailing list archive

[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 3110: Fix queue matching when files have the same TTH but a different size

 

------------------------------------------------------------
revno: 3110
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Tue 2012-11-06 19:32:58 +0100
message:
  Fix queue matching when files have the same TTH but a different size
modified:
  changelog.txt
  dcpp/QueueManager.cpp


--
lp:dcplusplus
https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk

Your team Dcplusplus-team is subscribed to branch lp:dcplusplus.
To unsubscribe from this branch go to https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk/+edit-subscription
=== modified file 'changelog.txt'
--- changelog.txt	2012-11-01 18:22:20 +0000
+++ changelog.txt	2012-11-06 18:32:58 +0000
@@ -5,6 +5,7 @@
 * Remove the "Windows UPnP" port mapper in favor of MiniUPnP (poy)
 * Add a UI interface to the plugin API (poy)
 * Delete "View as text" files only when their window is closed (poy)
+* Fix queue matching when files have the same TTH but a different size (thanks bigmuscle)
 
 -- 0.802 2012-10-20 --
 * Perf improvements using lock-free queues, requires P6 CPUs (poy)

=== modified file 'dcpp/QueueManager.cpp'
--- dcpp/QueueManager.cpp	2012-10-21 22:03:59 +0000
+++ dcpp/QueueManager.cpp	2012-11-06 18:32:58 +0000
@@ -764,7 +764,7 @@
 			if(qi->isSet(QueueItem::FLAG_USER_LIST))
 				continue;
 			auto j = tthMap.find(qi->getTTH());
-			if(j != tthMap.end() && i.second->getSize() == qi->getSize()) {
+			if(j != tthMap.end() && i.second->getSize() == j->second->getSize()) {
 				try {
 					addSource(qi, dl.getUser(), QueueItem::Source::FLAG_FILE_NOT_AVAILABLE);
 				} catch(...) {