diff --git a/engineio/packet.py b/engineio/packet.py index 5e70511a..768bad85 100644 --- a/engineio/packet.py +++ b/engineio/packet.py @@ -54,7 +54,7 @@ def encode(self, b64=False, always_bytes=True): def decode(self, encoded_packet): """Decode a transmitted package.""" b64 = False - if not isinstance(encoded_packet, six.binary_type): + if not isinstance(encoded_packet, six.binary_type) and not isinstance(encoded_packet, bytearray): encoded_packet = encoded_packet.encode('utf-8') self.packet_type = six.byte2int(encoded_packet[0:1]) if self.packet_type == 98: # 'b' --> binary base64 encoded packet