fixed a whole bunch of build warnings on gcc and msvc, along with some fixes discovered along the way

This commit is contained in:
Arvid Norberg
2011-02-21 05:24:41 +00:00
parent 9fe69e7596
commit 141ada013f
73 changed files with 353 additions and 248 deletions

View File

@@ -180,7 +180,9 @@ restart_response:
// if this is a request (not a response)
// we're done once we reach the end of the headers
// if (!m_method.empty()) m_finished = true;
m_body_start_pos = m_recv_pos;
// the HTTP header should always be < 2 GB
TORRENT_ASSERT(m_recv_pos < INT_MAX);
m_body_start_pos = int(m_recv_pos);
break;
}
@@ -250,12 +252,13 @@ restart_response:
while (m_cur_chunk_end <= m_recv_pos + incoming && !m_finished && incoming > 0)
{
int payload = m_cur_chunk_end - m_recv_pos;
size_type payload = m_cur_chunk_end - m_recv_pos;
if (payload > 0)
{
TORRENT_ASSERT(payload < INT_MAX);
m_recv_pos += payload;
boost::get<0>(ret) += payload;
incoming -= payload;
boost::get<0>(ret) += int(payload);
incoming -= int(payload);
}
buffer::const_interval buf(recv_buffer.begin + m_cur_chunk_end, recv_buffer.end);
size_type chunk_size;
@@ -264,7 +267,7 @@ restart_response:
{
if (chunk_size > 0)
{
std::pair<int, int> chunk_range(m_cur_chunk_end + header_size
std::pair<size_type, size_type> chunk_range(m_cur_chunk_end + header_size
, m_cur_chunk_end + header_size + chunk_size);
m_chunked_ranges.push_back(chunk_range);
}
@@ -308,10 +311,13 @@ restart_response:
}
else
{
int payload_received = m_recv_pos - m_body_start_pos + incoming;
size_type payload_received = m_recv_pos - m_body_start_pos + incoming;
if (payload_received > m_content_length
&& m_content_length >= 0)
incoming = m_content_length - m_recv_pos + m_body_start_pos;
{
TORRENT_ASSERT(m_content_length - m_recv_pos + m_body_start_pos < INT_MAX);
incoming = int(m_content_length - m_recv_pos + m_body_start_pos);
}
TORRENT_ASSERT(incoming >= 0);
m_recv_pos += incoming;