From 7952d4c3664b70ab44a87c37c5757ae0493f97d4 Mon Sep 17 00:00:00 2001 From: jesopo Date: Sun, 10 Feb 2019 16:48:08 +0000 Subject: [PATCH] Make use of utils.truncate_encode, to avoid cutting utf8 sequences in half --- src/IRCServer.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/IRCServer.py b/src/IRCServer.py index d939b6c6..6ace0098 100644 --- a/src/IRCServer.py +++ b/src/IRCServer.py @@ -314,11 +314,10 @@ class Server(IRCObject.Object): line = result break - encoded = line.split("\n")[0].strip("\r").encode("utf8") - if len(encoded) > LINE_CUTOFF: - encoded = encoded[:LINE_CUTOFF] - + line_stripped = line.split("\n", 1)[0].strip("\r") + encoded = utils.encode_truncate(line_stripped, "utf8", LINE_CUTOFF) encoded = b"%s\r\n" % encoded + line_obj = IRCLine.Line(datetime.datetime.utcnow(), encoded) self.queued_lines.append(line_obj)