From 72e475dfdeaa4a87dff0eef994e7814e94c40363 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Sun, 28 Feb 2010 16:04:52 +0000 Subject: 2010-03-01 Tatsuhiro Tsujikawa Avoid to calculate end() iterator in each loop. std::deque is particularly slow. Make sure that recalculate end iterator if element is erased during loop. --- src/DHTAbstractNodeLookupTask.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/DHTAbstractNodeLookupTask.h') diff --git a/src/DHTAbstractNodeLookupTask.h b/src/DHTAbstractNodeLookupTask.h index 30fbf86c..824b7e0a 100644 --- a/src/DHTAbstractNodeLookupTask.h +++ b/src/DHTAbstractNodeLookupTask.h @@ -61,8 +61,8 @@ protected: void toEntries (Container& entries, const std::vector >& nodes) const { - for(std::vector >::const_iterator i = nodes.begin(); - i != nodes.end(); ++i) { + for(std::vector >::const_iterator i = nodes.begin(), + eoi = nodes.end(); i != eoi; ++i) { SharedHandle e(new DHTNodeLookupEntry(*i)); entries.push_back(e); } -- cgit