add try catch around aria2 first commands

This commit is contained in:
luddens 2019-10-24 17:40:42 +02:00 committed by Kelson
parent 2500cc8e63
commit 0dd996c6a3
1 changed files with 14 additions and 7 deletions

View File

@ -127,17 +127,24 @@ void Download::cancelDownload()
Downloader::Downloader() : Downloader::Downloader() :
mp_aria(new Aria2()) mp_aria(new Aria2())
{ {
for (auto gid : mp_aria->tellActive()) { try {
m_knownDownloads[gid] = std::unique_ptr<Download>(new Download(mp_aria, gid)); for (auto gid : mp_aria->tellActive()) {
m_knownDownloads[gid]->updateStatus(); m_knownDownloads[gid] = std::unique_ptr<Download>(new Download(mp_aria, gid));
m_knownDownloads[gid]->updateStatus();
}
} catch (std::exception& e) {
std::cerr << "aria2 tellActive failed : " << e.what();
} }
for (auto gid : mp_aria->tellWaiting()) { try {
m_knownDownloads[gid] = std::unique_ptr<Download>(new Download(mp_aria, gid)); for (auto gid : mp_aria->tellWaiting()) {
m_knownDownloads[gid]->updateStatus(); m_knownDownloads[gid] = std::unique_ptr<Download>(new Download(mp_aria, gid));
m_knownDownloads[gid]->updateStatus();
}
} catch (std::exception& e) {
std::cerr << "aria2 tellWaiting failed : " << e.what();
} }
} }
/* Destructor */ /* Destructor */
Downloader::~Downloader() Downloader::~Downloader()
{ {