mirror of
https://github.com/rakshasa/rtorrent.git
synced 2026-10-08 15:19:20 +00:00
Compatibility fixes with thread-safe list tracker changes.
This commit is contained in:
@@ -164,10 +164,10 @@ print_download_status(char* first, char* last, core::Download* d) {
|
||||
torrent::TrackerList::iterator itr =
|
||||
std::find_if(d->tracker_list()->begin(), d->tracker_list()->end(),
|
||||
std::mem_fn(&torrent::tracker::Tracker::is_busy_not_scrape));
|
||||
auto status = (*itr)->status();
|
||||
auto status = itr->status();
|
||||
|
||||
first = print_buffer(first, last, "Tracker[%i:%i]: Connecting to %s %s",
|
||||
(*itr)->group(), std::distance(d->tracker_list()->begin(), itr), (*itr)->url().c_str(), status.c_str());
|
||||
itr->group(), std::distance(d->tracker_list()->begin(), itr), itr->url().c_str(), status.c_str());
|
||||
|
||||
} else if (!d->message().empty()) {
|
||||
first = print_buffer(first, last, "%s", d->message().c_str());
|
||||
|
||||
@@ -42,36 +42,36 @@ WindowTrackerList::redraw() {
|
||||
typedef std::pair<unsigned int, unsigned int> Range;
|
||||
|
||||
Range range = rak::advance_bidirectional<unsigned int>(0, *m_focus, tl->size(), (m_canvas->height() - 1) / 2);
|
||||
unsigned int group = tl->at(range.first)->group();
|
||||
unsigned int group = tl->at(range.first).group();
|
||||
|
||||
while (range.first != range.second) {
|
||||
auto tracker = tl->at(range.first);
|
||||
|
||||
if (tracker->group() == group)
|
||||
if (tracker.group() == group)
|
||||
m_canvas->print(0, pos, "%2i:", group++);
|
||||
|
||||
m_canvas->print(4, pos++, "%s",
|
||||
tracker->url().c_str());
|
||||
tracker.url().c_str());
|
||||
|
||||
if (pos < m_canvas->height()) {
|
||||
const char* state;
|
||||
|
||||
if (tracker->is_busy_not_scrape())
|
||||
if (tracker.is_busy_not_scrape())
|
||||
state = "req ";
|
||||
else if (tracker->is_busy())
|
||||
else if (tracker.is_busy())
|
||||
state = "scr ";
|
||||
else
|
||||
state = " ";
|
||||
|
||||
auto tracker_state = tracker->state();
|
||||
auto tracker_state = tracker.state();
|
||||
|
||||
m_canvas->print(0, pos++, "%s Id: %s Counters: %uf / %us (%u) %s S/L/D: %u/%u/%u (%u/%u)",
|
||||
state,
|
||||
rak::copy_escape_html(tracker->tracker_id()).c_str(),
|
||||
rak::copy_escape_html(tracker.tracker_id()).c_str(),
|
||||
tracker_state.failed_counter(),
|
||||
tracker_state.success_counter(),
|
||||
tracker_state.scrape_counter(),
|
||||
tracker->is_usable() ? " on" : tracker->is_enabled() ? "err" : "off",
|
||||
tracker.is_usable() ? " on" : tracker.is_enabled() ? "err" : "off",
|
||||
tracker_state.scrape_complete(),
|
||||
tracker_state.scrape_incomplete(),
|
||||
tracker_state.scrape_downloaded(),
|
||||
@@ -84,7 +84,7 @@ WindowTrackerList::redraw() {
|
||||
m_canvas->set_attr(4, pos - 1, m_canvas->width(), is_focused() ? A_REVERSE : A_BOLD, COLOR_PAIR(0));
|
||||
}
|
||||
|
||||
if (tracker->is_busy()) {
|
||||
if (tracker.is_busy()) {
|
||||
m_canvas->set_attr(0, pos - 2, 4, A_REVERSE, COLOR_PAIR(0));
|
||||
m_canvas->set_attr(0, pos - 1, 4, A_REVERSE, COLOR_PAIR(0));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user