diff --git a/evennia/server/portal/telnet.py b/evennia/server/portal/telnet.py index 17044ae110..558475cd34 100644 --- a/evennia/server/portal/telnet.py +++ b/evennia/server/portal/telnet.py @@ -234,12 +234,10 @@ class TelnetProtocol(Telnet, StatefulTelnetProtocol, Session): # escape IAC in line mode, and correctly add \r\n (the TELNET end-of-line) line = line.replace(IAC, IAC + IAC) line = line.replace('\n', '\r\n') - if not self.protocol_flags.get("NOGOAHEAD", True): - if self.protocol_flags.get("FORCEDENDLINE", False): - line += "\r\n" - line += IAC + GA - elif not line.endswith("\r\n"): + if not line.endswith("\r\n") and self.protocol_flags.get("FORCEDENDLINE", True): line += "\r\n" + if not self.protocol_flags.get("NOGOAHEAD", True): + line += IAC + GA return self.transport.write(mccp_compress(self, line)) # Session hooks diff --git a/evennia/server/portal/ttype.py b/evennia/server/portal/ttype.py index 3102762edf..45a60d625b 100644 --- a/evennia/server/portal/ttype.py +++ b/evennia/server/portal/ttype.py @@ -113,6 +113,7 @@ class Ttype(object): # only support after a certain version, but all support # it since at least 4 years. We assume recent client here for now. cupper = clientname.upper() + xterm256 = False if cupper.startswith("MUDLET"): # supports xterm256 stably since 1.1 (2010?) xterm256 = cupper.split("MUDLET", 1)[1].strip() >= "1.1"