From d2fccd8ae775a35068805c46e7360648852583e6 Mon Sep 17 00:00:00 2001 From: Arvid Norberg Date: Tue, 15 Jul 2014 03:23:43 +0000 Subject: [PATCH] merged resume data fix from RC_1_0 --- ChangeLog | 1 + src/torrent.cpp | 37 +++++++++++++++++-------------------- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6e31a8af7..143bc841e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -89,6 +89,7 @@ * fix uTP edge case where udp socket buffer fills up * fix nagle implementation in uTP + * fix saving resume data when removing all trackers * fix bug in udp_socket when changing socks5 proxy quickly 0.16.17 release diff --git a/src/torrent.cpp b/src/torrent.cpp index 14d4eb633..cb2b3dd42 100644 --- a/src/torrent.cpp +++ b/src/torrent.cpp @@ -6760,28 +6760,25 @@ namespace libtorrent } // save trackers - if (!m_trackers.empty()) + entry::list_type& tr_list = ret["trackers"].list(); + tr_list.push_back(entry::list_type()); + int tier = 0; + for (std::vector::const_iterator i = m_trackers.begin() + , end(m_trackers.end()); i != end; ++i) { - entry::list_type& tr_list = ret["trackers"].list(); - tr_list.push_back(entry::list_type()); - int tier = 0; - for (std::vector::const_iterator i = m_trackers.begin() - , end(m_trackers.end()); i != end; ++i) + // don't save trackers we can't trust + // TODO: 1 save the send_stats state instead of throwing them away + // it may pose an issue when downgrading though + if (i->send_stats == false) continue; + if (i->tier == tier) { - // don't save trackers we can't trust - // TODO: 1 save the send_stats state instead of throwing them away - // it may pose an issue when downgrading though - if (i->send_stats == false) continue; - if (i->tier == tier) - { - tr_list.back().list().push_back(i->url); - } - else - { - tr_list.push_back(entry::list_t); - tr_list.back().list().push_back(i->url); - tier = i->tier; - } + tr_list.back().list().push_back(i->url); + } + else + { + tr_list.push_back(entry::list_t); + tr_list.back().list().push_back(i->url); + tier = i->tier; } }