linuxdcpp-team team mailing list archive
-
linuxdcpp-team team
-
Mailing list archive
-
Message #04255
[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 2559: Revert optimization, may cause crashes
------------------------------------------------------------
revno: 2559
committer: Jacek Sieka <arnetheduck@xxxxxxxxx>
branch nick: dcplusplus
timestamp: Sun 2011-06-19 17:00:44 +0200
message:
Revert optimization, may cause crashes
modified:
win32/QueueFrame.cpp
win32/QueueFrame.h
--
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 'win32/QueueFrame.cpp'
--- win32/QueueFrame.cpp 2011-06-18 13:02:01 +0000
+++ win32/QueueFrame.cpp 2011-06-19 15:00:44 +0000
@@ -171,7 +171,7 @@
QueueFrame::QueueItemInfo* QueueFrame::getItemInfo(const string& target) {
string path = Util::getFilePath(target);
- auto items = directories.equal_range(&path);
+ auto items = directories.equal_range(path);
for(auto i = items.first; i != items.second; ++i) {
if(i->second->getTarget() == target) {
return i->second;
@@ -249,8 +249,8 @@
const string& dir = ii->getPath();
- bool updateDir = (directories.find(&dir) == directories.end());
- directories.insert(make_pair(&dir, ii));
+ bool updateDir = (directories.find(dir) == directories.end());
+ directories.insert(make_pair(dir, ii));
if(updateDir) {
addDirectory(dir, ii->isSet(QueueItem::FLAG_USER_LIST));
@@ -286,7 +286,7 @@
files->clear();
auto i = showTree->getChecked()
- ? directories.equal_range(&getSelectedDir())
+ ? directories.equal_range(getSelectedDir())
: make_pair(directories.begin(), directories.end());
for(auto j = i.first; j != i.second; ++j) {
@@ -595,7 +595,7 @@
next = parent;
- while((dirs->getChild(next) == NULL) && (directories.find(&getDir(next)) == directories.end())) {
+ while((dirs->getChild(next) == NULL) && (directories.find(getDir(next)) == directories.end())) {
delete dirs->getData(next);
parent = dirs->getParent(next);
@@ -667,7 +667,7 @@
}
const string& dir = getDir(ht);
- auto p = directories.equal_range(&dir);
+ auto p = directories.equal_range(dir);
for(auto i = p.first; i != p.second; ++i) {
QueueItemInfo* ii = i->second;
@@ -765,7 +765,7 @@
if(dii->getIsBundle()) {
QueueManager::getInstance()->removeBundle(TTHValue(dii->getDir()));
} else {
- auto dp = directories.equal_range(&dii->getDir());
+ auto dp = directories.equal_range(dii->getDir());
for(auto i = dp.first; i != dp.second; ++i) {
QueueManager::getInstance()->remove(i->second->getTarget());
}
@@ -809,7 +809,7 @@
child = dirs->getNextSibling(child);
}
const string& name = getDir(ht);
- auto dp = directories.equal_range(&name);
+ auto dp = directories.equal_range(name);
for(auto i = dp.first; i != dp.second; ++i) {
QueueManager::getInstance()->setPriority(i->second->getTarget(), p);
}
@@ -1068,7 +1068,7 @@
queueItems--;
dcassert(queueItems >= 0);
- auto i = directories.equal_range(&ii->getPath());
+ auto i = directories.equal_range(ii->getPath());
auto j = i.first;
for(; j != i.second; ++j) {
if(j->second == ii)
@@ -1076,7 +1076,7 @@
}
dcassert(j != i.second);
directories.erase(j);
- if(directories.count(&ii->getPath()) == 0) {
+ if(directories.count(ii->getPath()) == 0) {
removeDirectory(ii->getPath(), ii->isSet(QueueItem::FLAG_USER_LIST));
if(isCurDir(ii->getPath()))
curDir.clear();
=== modified file 'win32/QueueFrame.h'
--- win32/QueueFrame.h 2011-06-18 13:02:01 +0000
+++ win32/QueueFrame.h 2011-06-19 15:00:44 +0000
@@ -209,7 +209,7 @@
CheckBoxPtr showTree;
- typedef unordered_multimap<const string*, QueueItemInfo*, noCaseStringHash, noCaseStringEq> DirectoryMap;
+ typedef unordered_multimap<string, QueueItemInfo*, noCaseStringHash, noCaseStringEq> DirectoryMap;
DirectoryMap directories;
typedef unordered_map<TTHValue, BundleItemInfo*> BundleInfoMap;
BundleInfoMap bundleInfos;