summaryrefslogtreecommitdiffstats
path: root/deluge/transfer.py
diff options
context:
space:
mode:
authorCalum Lind <calumlind+deluge@gmail.com>2017-02-12 11:26:31 +0000
committerCalum Lind <calumlind+deluge@gmail.com>2017-02-22 12:36:33 +0000
commitff6cec251a17a0d8ef9193ebc7dbc43e1cd866c3 (patch)
tree549c45a3ee8d13623c037a49accc2bc843b60345 /deluge/transfer.py
parent84802da29b71679547ba245ea3d870512dba3b49 (diff)
downloaddeluge-ff6cec251a17a0d8ef9193ebc7dbc43e1cd866c3.tar.gz
deluge-ff6cec251a17a0d8ef9193ebc7dbc43e1cd866c3.tar.bz2
deluge-ff6cec251a17a0d8ef9193ebc7dbc43e1cd866c3.zip
[Core] Markup byte-strings to fix httpdownloader and core tests
* Twisted methods require byte-string arguments. * The headers str conversion in httpdownloader _download_file was incorrent and left the dict key still as unicode so replaced with a dict comprehension (py2.7 requirement).
Diffstat (limited to 'deluge/transfer.py')
-rw-r--r--deluge/transfer.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/deluge/transfer.py b/deluge/transfer.py
index 442d71446..c276df440 100644
--- a/deluge/transfer.py
+++ b/deluge/transfer.py
@@ -33,7 +33,7 @@ class DelugeTransferProtocol(Protocol, object):
"""
def __init__(self):
- self._buffer = ''
+ self._buffer = b'' # TODO: Look into using bytearray instead of byte string.
self._message_length = 0
self._bytes_received = 0
self._bytes_sent = 0
@@ -53,7 +53,7 @@ class DelugeTransferProtocol(Protocol, object):
size_data = len(compressed)
# Store length as a signed integer (using 4 bytes). "!" denotes network byte order.
payload_len = struct.pack('!i', size_data)
- header = 'D' + payload_len
+ header = b'D' + payload_len
self._bytes_sent += len(header) + len(compressed)
self.transport.write(header)
self.transport.write(compressed)
@@ -95,7 +95,7 @@ class DelugeTransferProtocol(Protocol, object):
# Read the first bytes of the message (MESSAGE_HEADER_SIZE bytes)
header = self._buffer[:MESSAGE_HEADER_SIZE]
payload_len = header[1:MESSAGE_HEADER_SIZE]
- if header[0] != 'D':
+ if header[0] != b'D':
raise Exception('Invalid header format. First byte is %d' % ord(header[0]))
# Extract the length stored as a signed integer (using 4 bytes)
self._message_length = struct.unpack('!i', payload_len)[0]
@@ -107,7 +107,7 @@ class DelugeTransferProtocol(Protocol, object):
log.warn('Error occurred when parsing message header: %s.', ex)
log.warn('This version of Deluge cannot communicate with the sender of this data.')
self._message_length = 0
- self._buffer = ''
+ self._buffer = b''
def _handle_complete_message(self, data):
"""