summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/DownloadEngine.cc15
-rw-r--r--src/DownloadEngine.h2
2 files changed, 9 insertions, 8 deletions
diff --git a/src/DownloadEngine.cc b/src/DownloadEngine.cc
index 71607ca0..18aa963b 100644
--- a/src/DownloadEngine.cc
+++ b/src/DownloadEngine.cc
@@ -107,18 +107,21 @@ DownloadEngine::DownloadEngine(const SharedHandle<EventPoll>& eventPoll)
sessionId_.assign(&sessionId[0], & sessionId[sizeof(sessionId)]);
}
+namespace {
+void cleanQueue(std::deque<Command*>& commands) {
+ std::for_each(commands.begin(), commands.end(), Deleter());
+ commands.clear();
+}
+} // namespace
+
DownloadEngine::~DownloadEngine() {
- cleanQueue();
+ cleanQueue(commands_);
+ cleanQueue(routineCommands_);
#ifdef HAVE_ARES_ADDR_NODE
setAsyncDNSServers(0);
#endif // HAVE_ARES_ADDR_NODE
}
-void DownloadEngine::cleanQueue() {
- std::for_each(commands_.begin(), commands_.end(), Deleter());
- commands_.clear();
-}
-
namespace {
void executeCommand(std::deque<Command*>& commands,
Command::STATUS statusFilter)
diff --git a/src/DownloadEngine.h b/src/DownloadEngine.h
index afe51307..b26d3dda 100644
--- a/src/DownloadEngine.h
+++ b/src/DownloadEngine.h
@@ -183,8 +183,6 @@ public:
// processed. Otherwise, returns 0.
int run(bool oneshot=false);
- void cleanQueue();
-
bool addSocketForReadCheck(const SharedHandle<SocketCore>& socket,
Command* command);
bool deleteSocketForReadCheck(const SharedHandle<SocketCore>& socket,