lt sync 1710
This commit is contained in:
parent
15d39eeb54
commit
2a9455e50a
|
@ -34,6 +34,7 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
#define TORRENT_INTRUSIVE_PTR_BASE
|
#define TORRENT_INTRUSIVE_PTR_BASE
|
||||||
|
|
||||||
#include <boost/detail/atomic_count.hpp>
|
#include <boost/detail/atomic_count.hpp>
|
||||||
|
#include <boost/checked_delete.hpp>
|
||||||
#include "libtorrent/config.hpp"
|
#include "libtorrent/config.hpp"
|
||||||
#include "libtorrent/assert.hpp"
|
#include "libtorrent/assert.hpp"
|
||||||
|
|
||||||
|
@ -60,7 +61,7 @@ namespace libtorrent
|
||||||
TORRENT_ASSERT(s->m_refs > 0);
|
TORRENT_ASSERT(s->m_refs > 0);
|
||||||
TORRENT_ASSERT(s != 0);
|
TORRENT_ASSERT(s != 0);
|
||||||
if (--s->m_refs == 0)
|
if (--s->m_refs == 0)
|
||||||
delete static_cast<T const*>(s);
|
boost::checked_delete(static_cast<T const*>(s));
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::intrusive_ptr<T> self()
|
boost::intrusive_ptr<T> self()
|
||||||
|
|
|
@ -57,6 +57,7 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
#include "libtorrent/peer_request.hpp"
|
#include "libtorrent/peer_request.hpp"
|
||||||
#include "libtorrent/hasher.hpp"
|
#include "libtorrent/hasher.hpp"
|
||||||
#include "libtorrent/config.hpp"
|
#include "libtorrent/config.hpp"
|
||||||
|
#include "libtorrent/buffer.hpp"
|
||||||
|
|
||||||
namespace libtorrent
|
namespace libtorrent
|
||||||
{
|
{
|
||||||
|
@ -344,8 +345,8 @@ namespace libtorrent
|
||||||
// used to move pieces while expanding
|
// used to move pieces while expanding
|
||||||
// the storage from compact allocation
|
// the storage from compact allocation
|
||||||
// to full allocation
|
// to full allocation
|
||||||
std::vector<char> m_scratch_buffer;
|
buffer m_scratch_buffer;
|
||||||
std::vector<char> m_scratch_buffer2;
|
buffer m_scratch_buffer2;
|
||||||
// the piece that is in the scratch buffer
|
// the piece that is in the scratch buffer
|
||||||
int m_scratch_piece;
|
int m_scratch_piece;
|
||||||
|
|
||||||
|
|
|
@ -190,6 +190,8 @@ namespace libtorrent
|
||||||
|
|
||||||
void broadcast_socket::close()
|
void broadcast_socket::close()
|
||||||
{
|
{
|
||||||
|
m_on_receive.clear();
|
||||||
|
|
||||||
for (std::list<socket_entry>::iterator i = m_sockets.begin()
|
for (std::list<socket_entry>::iterator i = m_sockets.begin()
|
||||||
, end(m_sockets.end()); i != end; ++i)
|
, end(m_sockets.end()); i != end; ++i)
|
||||||
{
|
{
|
||||||
|
|
|
@ -2122,8 +2122,8 @@ namespace detail
|
||||||
|
|
||||||
entry session_impl::dht_state() const
|
entry session_impl::dht_state() const
|
||||||
{
|
{
|
||||||
TORRENT_ASSERT(m_dht);
|
|
||||||
mutex_t::scoped_lock l(m_mutex);
|
mutex_t::scoped_lock l(m_mutex);
|
||||||
|
if (!m_dht) return entry();
|
||||||
return m_dht->state();
|
return m_dht->state();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -99,6 +99,7 @@ POSSIBILITY OF SUCH DAMAGE.
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <boost/filesystem/exception.hpp>
|
#include <boost/filesystem/exception.hpp>
|
||||||
#include "libtorrent/utf8.hpp"
|
#include "libtorrent/utf8.hpp"
|
||||||
|
#include "libtorrent/buffer.hpp"
|
||||||
|
|
||||||
namespace libtorrent
|
namespace libtorrent
|
||||||
{
|
{
|
||||||
|
@ -386,7 +387,7 @@ namespace libtorrent
|
||||||
file_pool& m_files;
|
file_pool& m_files;
|
||||||
|
|
||||||
// temporary storage for moving pieces
|
// temporary storage for moving pieces
|
||||||
std::vector<char> m_scratch_buffer;
|
buffer m_scratch_buffer;
|
||||||
};
|
};
|
||||||
|
|
||||||
sha1_hash storage::hash_for_slot(int slot, partial_hash& ph, int piece_size)
|
sha1_hash storage::hash_for_slot(int slot, partial_hash& ph, int piece_size)
|
||||||
|
@ -468,14 +469,14 @@ namespace libtorrent
|
||||||
void storage::release_files()
|
void storage::release_files()
|
||||||
{
|
{
|
||||||
m_files.release(this);
|
m_files.release(this);
|
||||||
std::vector<char>().swap(m_scratch_buffer);
|
buffer().swap(m_scratch_buffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
void storage::delete_files()
|
void storage::delete_files()
|
||||||
{
|
{
|
||||||
// make sure we don't have the files open
|
// make sure we don't have the files open
|
||||||
m_files.release(this);
|
m_files.release(this);
|
||||||
std::vector<char>().swap(m_scratch_buffer);
|
buffer().swap(m_scratch_buffer);
|
||||||
|
|
||||||
// delete the files from disk
|
// delete the files from disk
|
||||||
std::set<std::string> directories;
|
std::set<std::string> directories;
|
||||||
|
@ -975,6 +976,7 @@ namespace libtorrent
|
||||||
, m_storage_mode(storage_mode_sparse)
|
, m_storage_mode(storage_mode_sparse)
|
||||||
, m_info(ti)
|
, m_info(ti)
|
||||||
, m_save_path(complete(save_path))
|
, m_save_path(complete(save_path))
|
||||||
|
, m_state(state_none)
|
||||||
, m_current_slot(0)
|
, m_current_slot(0)
|
||||||
, m_out_of_place(false)
|
, m_out_of_place(false)
|
||||||
, m_scratch_piece(-1)
|
, m_scratch_piece(-1)
|
||||||
|
@ -1622,8 +1624,8 @@ namespace libtorrent
|
||||||
if (m_current_slot == m_info->num_pieces())
|
if (m_current_slot == m_info->num_pieces())
|
||||||
{
|
{
|
||||||
m_state = state_create_files;
|
m_state = state_create_files;
|
||||||
std::vector<char>().swap(m_scratch_buffer);
|
buffer().swap(m_scratch_buffer);
|
||||||
std::vector<char>().swap(m_scratch_buffer2);
|
buffer().swap(m_scratch_buffer2);
|
||||||
if (m_storage_mode != storage_mode_compact)
|
if (m_storage_mode != storage_mode_compact)
|
||||||
{
|
{
|
||||||
std::vector<int>().swap(m_piece_to_slot);
|
std::vector<int>().swap(m_piece_to_slot);
|
||||||
|
|
Loading…
Reference in New Issue