Handle "alerts dropped" alert from libtorrent

This commit is contained in:
Chocobo1 2019-09-13 12:31:26 +08:00
parent b144d3b797
commit 5e1e983928
No known key found for this signature in database
GPG key ID: 210D9C873253A68C
2 changed files with 16 additions and 0 deletions

View file

@ -3902,6 +3902,11 @@ void Session::handleAlert(const lt::alert *a)
case lt::external_ip_alert::alert_type:
handleExternalIPAlert(static_cast<const lt::external_ip_alert*>(a));
break;
#if (LIBTORRENT_VERSION_NUM >= 10200)
case lt::alerts_dropped_alert::alert_type:
handleAlertsDroppedAlert(static_cast<const lt::alerts_dropped_alert *>(a));
break;
#endif
}
}
catch (const std::exception &exc) {
@ -4365,6 +4370,14 @@ void Session::handleSessionStatsAlert(const lt::session_stats_alert *p)
emit statsUpdated();
}
#if (LIBTORRENT_VERSION_NUM >= 10200)
void Session::handleAlertsDroppedAlert(const lt::alerts_dropped_alert *p) const
{
LogMsg(tr("Error: Internal alert queue full and alerts were dropped, you might see degraded performance. Dropped alert types: %1. Message: %2")
.arg(QString::fromStdString(p->dropped_alerts.to_string()), QString::fromStdString(p->message())), Log::CRITICAL);
}
#endif
void Session::handleStateUpdateAlert(const lt::state_update_alert *p)
{
QVector<BitTorrent::TorrentHandle *> updatedTorrents;