*** empty log message ***

This commit is contained in:
Arvid Norberg
2004-01-01 23:23:17 +00:00
parent cf9215deec
commit 5cde50ee01
3 changed files with 24 additions and 22 deletions

View File

@@ -59,6 +59,11 @@ POSSIBILITY OF SUCH DAMAGE.
#include "libtorrent/fingerprint.hpp" #include "libtorrent/fingerprint.hpp"
#include "libtorrent/debug.hpp" #include "libtorrent/debug.hpp"
#if defined(_MSC_VER) && !defined(NDEBUG)
#include <eh.h>
#endif
// TODO: if we're a seed and the peer is a seed, close the connections // TODO: if we're a seed and the peer is a seed, close the connections
@@ -71,12 +76,13 @@ namespace libtorrent
// hardware exceptions that makes // hardware exceptions that makes
// it hard to debug stuff // it hard to debug stuff
#if defined(_MSC_VER) && !defined(NDEBUG) #if defined(_MSC_VER) && !defined(NDEBUG)
struct eh_initializer struct eh_initializer
{ {
eh_initializer() eh_initializer()
{ _set_se_translator(straight_to_debugger); } { ::_set_se_translator(straight_to_debugger); }
static void straight_to_debugger(unsigned int, EXCEPTION_POINTERS*) static void straight_to_debugger(unsigned int, _EXCEPTION_POINTERS*)
{ throw; } { throw; }
}; };
#else #else

View File

@@ -33,23 +33,6 @@ POSSIBILITY OF SUCH DAMAGE.
#ifndef TORRENT_SOCKET_HPP_INCLUDED #ifndef TORRENT_SOCKET_HPP_INCLUDED
#define TORRENT_SOCKET_HPP_INCLUDED #define TORRENT_SOCKET_HPP_INCLUDED
// TODO: remove the dependency of
// platform specific headers here.
// sockaddr_in is hard to get rid of in a nice way
#if defined(_WIN32)
#include <winsock2.h>
#else
#include <unistd.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <errno.h>
#include <pthread.h>
#include <fcntl.h>
#include <arpa/inet.h>
#endif
#include <boost/smart_ptr.hpp> #include <boost/smart_ptr.hpp>
#include <boost/function.hpp> #include <boost/function.hpp>
#include <boost/noncopyable.hpp> #include <boost/noncopyable.hpp>

View File

@@ -121,13 +121,26 @@ namespace
std::string escape_string(const char* str, int len) std::string escape_string(const char* str, int len)
{ {
static const char special_chars[] = "$-_.+!*'(),";
std::stringstream ret; std::stringstream ret;
ret << std::hex << std::setfill('0'); ret << std::hex << std::setfill('0');
for (int i = 0; i < len; ++i) for (int i = 0; i < len; ++i)
{ {
// TODO: should alnum() be replaced with printable()? if (std::isalnum(static_cast<unsigned char>(*str))
if (std::isalnum(static_cast<unsigned char>(*str))) ret << *str; || std::find(
else ret << "%" << std::setw(2) << (int)static_cast<unsigned char>(*str); special_chars
, special_chars+sizeof(special_chars)-1
, *str))
{
ret << *str;
}
else
{
ret << "%"
<< std::setw(2)
<< (int)static_cast<unsigned char>(*str);
}
++str; ++str;
} }
return ret.str(); return ret.str();