Start up torrents after UI was created. Fixes #6454.

Commit dd0537d changed torrents startup code adding alerts processing
into it. Therefore alerts were processed before UI code subscribed to
signals and therefore part of alerts was not reflected in the UI.

Thus here we do not start torrents in Session constructor, but do that
from Application::exec() after UI was constructed and is ready to process
signals.
This commit is contained in:
Eugene Shalygin 2017-04-14 00:43:09 +02:00
parent 07af8c9648
commit 21a72c651f
3 changed files with 4 additions and 2 deletions

View file

@ -462,6 +462,9 @@ int Application::exec(const QStringList &params)
m_paramsQueue.clear(); m_paramsQueue.clear();
} }
// Now UI is ready to process signals from Session
BitTorrent::Session::instance()->startUpTorrents();
return BaseApplication::exec(); return BaseApplication::exec();
} }

View file

@ -440,7 +440,6 @@ Session::Session(QObject *parent)
Net::PortForwarder::initInstance(m_nativeSession); Net::PortForwarder::initInstance(m_nativeSession);
qDebug("* BitTorrent Session constructed"); qDebug("* BitTorrent Session constructed");
startUpTorrents();
} }
bool Session::isDHTEnabled() const bool Session::isDHTEnabled() const

View file

@ -330,6 +330,7 @@ namespace BitTorrent
QStringList bannedIPs() const; QStringList bannedIPs() const;
void setBannedIPs(const QStringList &list); void setBannedIPs(const QStringList &list);
void startUpTorrents();
TorrentHandle *findTorrent(const InfoHash &hash) const; TorrentHandle *findTorrent(const InfoHash &hash) const;
QHash<InfoHash, TorrentHandle *> torrents() const; QHash<InfoHash, TorrentHandle *> torrents() const;
TorrentStatusReport torrentStatusReport() const; TorrentStatusReport torrentStatusReport() const;
@ -460,7 +461,6 @@ namespace BitTorrent
void enableIPFilter(); void enableIPFilter();
void disableIPFilter(); void disableIPFilter();
void startUpTorrents();
bool addTorrent_impl(AddTorrentData addData, const MagnetUri &magnetUri, bool addTorrent_impl(AddTorrentData addData, const MagnetUri &magnetUri,
TorrentInfo torrentInfo = TorrentInfo(), TorrentInfo torrentInfo = TorrentInfo(),
const QByteArray &fastresumeData = QByteArray()); const QByteArray &fastresumeData = QByteArray());