Merge branch 'fix-initial-rq-leak' of https://github.com/nmaier/aria2 into nmaier-fix-initial-rq-leak

pull/50/merge
Tatsuhiro Tsujikawa 2013-02-26 21:56:37 +09:00
commit dfac717dbf
2 changed files with 9 additions and 3 deletions

View File

@ -104,7 +104,7 @@ void handler(int signal) {
} // namespace
MultiUrlRequestInfo::MultiUrlRequestInfo
(const std::vector<SharedHandle<RequestGroup> >& requestGroups,
(std::vector<SharedHandle<RequestGroup> >& requestGroups,
const SharedHandle<Option>& op,
const SharedHandle<StatCalc>& statCalc,
const SharedHandle<OutputFile>& summaryOut,
@ -158,6 +158,8 @@ error_code::Value MultiUrlRequestInfo::execute()
SharedHandle<DownloadEngine> e =
DownloadEngineFactory().newDownloadEngine(option_.get(), requestGroups_);
// Avoid keeping RequestGroups alive longer than necessary
requestGroups_.clear();
if(!option_->blank(PREF_LOAD_COOKIES)) {
File cookieFile(option_->get(PREF_LOAD_COOKIES));

View File

@ -52,7 +52,7 @@ class UriListParser;
class MultiUrlRequestInfo {
private:
std::vector<SharedHandle<RequestGroup> > requestGroups_;
std::vector<SharedHandle<RequestGroup> >& requestGroups_;
SharedHandle<Option> option_;
@ -64,8 +64,12 @@ private:
void printMessageForContinue();
public:
/*
* MultiRequestInfo effectively takes ownership of the
* requestGroups.
*/
MultiUrlRequestInfo
(const std::vector<SharedHandle<RequestGroup> >& requestGroups,
(std::vector<SharedHandle<RequestGroup> >& requestGroups,
const SharedHandle<Option>& op,
const SharedHandle<StatCalc>& statCalc,
const SharedHandle<OutputFile>& summaryOut,