From db78e3dcdbdedcb7bacc4513ae8244c139ae839c Mon Sep 17 00:00:00 2001 From: flux Date: Sat, 6 Jul 2019 02:17:06 +0000 Subject: [PATCH] add check to prevent bad unicode from crashing the server --- init.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/init.lua b/init.lua index 8760a11..d5309d8 100644 --- a/init.lua +++ b/init.lua @@ -128,7 +128,12 @@ local make_iso = function(s) local s2 = "" while i <= string.len(s) do if string.byte(s,i) > 159 then - s2 = s2..string.char(get_iso(string.sub(s, i, i+1))) + local ciso = get_iso(string.sub(s, i, i+1)) + if ciso >= 0 and ciso < 256 then + s2 = s2..string.char(ciso) + else + s2 = s2..string.char(127) + end i = i + 2 else s2 = s2..string.sub(s, i, i)