diff --git a/src/DownloadEngine.cc b/src/DownloadEngine.cc index 71607ca0f..18aa963b9 100644 --- a/src/DownloadEngine.cc +++ b/src/DownloadEngine.cc @@ -107,18 +107,21 @@ DownloadEngine::DownloadEngine(const SharedHandle& eventPoll) sessionId_.assign(&sessionId[0], & sessionId[sizeof(sessionId)]); } +namespace { +void cleanQueue(std::deque& 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& commands, Command::STATUS statusFilter) diff --git a/src/DownloadEngine.h b/src/DownloadEngine.h index afe513076..b26d3dda0 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& socket, Command* command); bool deleteSocketForReadCheck(const SharedHandle& socket,