From 36f8e5d349246ffebaac07ce69f72f7eb9866e74 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Sat, 7 Apr 2012 03:37:37 +0900 Subject: [PATCH] Use TR1 slots instead of sigc++ for DownloadInfo events. --- src/command_download.cc | 4 ++-- src/core/download.cc | 13 ++++--------- src/core/download.h | 4 ---- 3 files changed, 6 insertions(+), 15 deletions(-) diff --git a/src/command_download.cc b/src/command_download.cc index 33f876fb..18db22c5 100644 --- a/src/command_download.cc +++ b/src/command_download.cc @@ -285,8 +285,8 @@ retrieve_d_bitfield(core::Download* download) { // Just a helper function atm. torrent::Object cmd_d_initialize_logs(core::Download* download) { - download->info()->signal_network_log().connect(sigc::mem_fun(control->core(), &core::Manager::push_log_complete)); - download->info()->signal_storage_error().connect(sigc::mem_fun(control->core(), &core::Manager::push_log_complete)); + download->info()->signal_network_log().push_back(tr1::bind(&core::Manager::push_log_complete, control->core(), tr1::placeholders::_1)); + download->info()->signal_storage_error().push_back(tr1::bind(&core::Manager::push_log_complete, control->core(), tr1::placeholders::_1)); return torrent::Object(); } diff --git a/src/core/download.cc b/src/core/download.cc index d8c051a8..3e704a49 100644 --- a/src/core/download.cc +++ b/src/core/download.cc @@ -65,21 +65,16 @@ Download::Download(download_type d) : m_resumeFlags(~uint32_t()), m_group(0) { - m_connTrackerSucceeded = m_download.info()->signal_tracker_success().connect(sigc::bind(sigc::mem_fun(*this, &Download::receive_tracker_msg), "")); - m_connTrackerFailed = m_download.info()->signal_tracker_failed().connect(sigc::mem_fun(*this, &Download::receive_tracker_msg)); - m_connStorageError = m_download.info()->signal_storage_error().connect(sigc::mem_fun(*this, &Download::receive_storage_error)); - - m_download.info()->signal_chunk_failed().connect(sigc::mem_fun(*this, &Download::receive_chunk_failed)); + m_download.info()->signal_tracker_success().push_back(tr1::bind(&Download::receive_tracker_msg, this, "")); + m_download.info()->signal_tracker_failed().push_back(tr1::bind(&Download::receive_tracker_msg, this, tr1::placeholders::_1)); + m_download.info()->signal_storage_error().push_back(tr1::bind(&Download::receive_storage_error, this, tr1::placeholders::_1)); + m_download.info()->signal_chunk_failed().push_back(tr1::bind(&Download::receive_chunk_failed, this, tr1::placeholders::_1)); } Download::~Download() { if (!m_download.is_valid()) return; - m_connTrackerSucceeded.disconnect(); - m_connTrackerFailed.disconnect(); - m_connStorageError.disconnect(); - m_download = download_type(); } diff --git a/src/core/download.h b/src/core/download.h index 78df4c04..145e2915 100644 --- a/src/core/download.h +++ b/src/core/download.h @@ -155,10 +155,6 @@ private: uint32_t m_resumeFlags; - sigc::connection m_connTrackerSucceeded; - sigc::connection m_connTrackerFailed; - sigc::connection m_connStorageError; - unsigned int m_group; };