fix initialization order warnings. pack peer_connection and torrent

This commit is contained in:
Arvid Norberg
2013-11-26 07:47:48 +00:00
parent e122678d04
commit fc2fc8dfb2
10 changed files with 182 additions and 146 deletions

View File

@@ -1748,7 +1748,7 @@ namespace libtorrent
if (!client_info.empty()) m_client_version = client_info;
int reqq = int(root.dict_find_int_value("reqq"));
if (reqq > 0) m_max_out_request_queue = reqq;
if (reqq > 0) max_out_request_queue(reqq);
if (root.dict_find_int_value("upload_only", 0))
set_upload_only(true);
@@ -3143,7 +3143,7 @@ namespace libtorrent
if (f && std::equal(f->name, f->name + 2, "BC"))
{
// if this is a bitcomet client, lower the request queue size limit
if (m_max_out_request_queue > 50) m_max_out_request_queue = 50;
if (max_out_request_queue() > 50) max_out_request_queue(50);
}
#ifndef TORRENT_DISABLE_EXTENSIONS

View File

@@ -135,8 +135,7 @@ namespace libtorrent
}
internal_file_entry::internal_file_entry(internal_file_entry const& fe)
: name(0)
, offset(fe.offset)
: offset(fe.offset)
, size(fe.size)
, symlink_index(fe.symlink_index)
, name_len(fe.name_len)
@@ -145,6 +144,7 @@ namespace libtorrent
, executable_attribute(fe.executable_attribute)
, symlink_attribute(fe.symlink_attribute)
, no_root_dir(fe.no_root_dir)
, name(0)
, path_index(fe.path_index)
{
set_name(fe.filename().c_str());

View File

@@ -77,8 +77,8 @@ namespace libtorrent
// multiply with the blocks per piece since that many requests are
// merged into one http request
m_max_out_request_queue = ses.settings().urlseed_pipeline_size
* blocks_per_piece;
max_out_request_queue(ses.settings().urlseed_pipeline_size
* blocks_per_piece);
prefer_whole_pieces(1);

View File

@@ -113,7 +113,6 @@ namespace libtorrent
, policy::peer* peerinfo
, bool outgoing)
: m_ses(ses)
, m_max_out_request_queue(m_ses.settings().max_out_request_queue)
, m_work(ses.m_io_service)
, m_last_piece(time_now())
, m_last_request(time_now())
@@ -134,10 +133,11 @@ namespace libtorrent
, m_uploaded_at_last_unchoke(0)
, m_disk_recv_buffer(ses, 0)
, m_socket(s)
, m_remote(endp)
, m_torrent(tor)
, m_receiving_block(piece_block::invalid)
, m_peer_info(peerinfo)
, m_last_seen_complete(0)
, m_receiving_block(piece_block::invalid)
, m_remote(endp)
, m_timeout_extend(0)
, m_outstanding_bytes(0)
, m_extension_outstanding_bytes(0)
@@ -153,7 +153,6 @@ namespace libtorrent
, m_priority(1)
, m_upload_limit(0)
, m_download_limit(0)
, m_peer_info(peerinfo)
, m_speed(slow)
, m_connection_ticket(-1)
, m_remote_bytes_dled(0)
@@ -161,6 +160,7 @@ namespace libtorrent
, m_outstanding_writing_bytes(0)
, m_download_rate_peak(0)
, m_upload_rate_peak(0)
, m_max_out_request_queue(m_ses.settings().max_out_request_queue)
, m_rtt(0)
, m_prefer_whole_pieces(0)
, m_desired_queue_size(2)

View File

@@ -399,11 +399,22 @@ namespace libtorrent
, m_files_checked(false)
, m_queued_for_checking(false)
, m_max_connections((1<<24)-1)
, m_graceful_pause_mode(false)
, m_need_connect_boost(true)
, m_lsd_seq(0)
, m_magnet_link(false)
, m_apply_ip_filter(p.flags & add_torrent_params::flag_apply_ip_filter)
, m_merge_resume_trackers(p.flags & add_torrent_params::flag_merge_resume_trackers)
, m_padding(0)
, m_complete(0xffffff)
, m_priority(0)
, m_complete(0xffffff)
, m_state_subscription(p.flags & add_torrent_params::flag_update_subscribe)
, m_in_state_updates(false)
, m_is_active_download(false)
, m_is_active_finished(false)
, m_ssl_torrent(false)
, m_deleted(false)
, m_incomplete(0xffffff)
, m_progress_ppm(0)
, m_abort(false)
, m_announce_to_dht((p.flags & add_torrent_params::flag_paused) == 0)
, m_announce_to_trackers((p.flags & add_torrent_params::flag_paused) == 0)
@@ -413,22 +424,11 @@ namespace libtorrent
, m_auto_managed(p.flags & add_torrent_params::flag_auto_managed)
, m_share_mode(p.flags & add_torrent_params::flag_share_mode)
, m_last_download(0)
, m_last_upload(0)
, m_last_scrape(0)
, m_last_upload(0)
, m_downloaded(0xffffff)
, m_interface_index(0)
, m_graceful_pause_mode(false)
, m_need_connect_boost(true)
, m_lsd_seq(0)
, m_magnet_link(false)
, m_apply_ip_filter(p.flags & add_torrent_params::flag_apply_ip_filter)
, m_merge_resume_trackers(p.flags & add_torrent_params::flag_merge_resume_trackers)
, m_state_subscription(p.flags & add_torrent_params::flag_update_subscribe)
, m_in_state_updates(false)
, m_is_active_download(false)
, m_is_active_finished(false)
, m_ssl_torrent(false)
, m_deleted(false)
, m_progress_ppm(0)
{
// if there is resume data already, we don't need to trigger the initial save
// resume data