From 05fabc6255f79223037cabc1f64fb948b882228b Mon Sep 17 00:00:00 2001 From: Mitchell Livingston Date: Tue, 31 Aug 2010 11:49:09 +0000 Subject: [PATCH] #3535 remove unnecessary escape characters and use lowercase in escaped letters in info_hash --- libtransmission/metainfo.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libtransmission/metainfo.c b/libtransmission/metainfo.c index b77249e91..2b40ddfb9 100644 --- a/libtransmission/metainfo.c +++ b/libtransmission/metainfo.c @@ -387,7 +387,11 @@ is_rfc2396_alnum( char ch ) { return ( '0' <= ch && ch <= '9' ) || ( 'A' <= ch && ch <= 'Z' ) - || ( 'a' <= ch && ch <= 'z' ); + || ( 'a' <= ch && ch <= 'z' ) + || ch == '.' + || ch == '-' + || ch == '_' + || ch == '~'; } static void @@ -399,7 +403,7 @@ escape( char * out, const uint8_t * in, size_t in_len ) /* rfc2396 */ if( is_rfc2396_alnum( *in ) ) *out++ = (char) *in++; else - out += tr_snprintf( out, 4, "%%%02X", (unsigned int)*in++ ); + out += tr_snprintf( out, 4, "%%%02x", (unsigned int)*in++ ); *out = '\0'; }