diff --git a/lualib/sprotoparser.lua b/lualib/sprotoparser.lua index ff6960c2..cf65e536 100644 --- a/lualib/sprotoparser.lua +++ b/lualib/sprotoparser.lua @@ -1,5 +1,4 @@ local lpeg = require "lpeg" -local bit32 = require "bit32" local table = require "table" local P = lpeg.P @@ -196,18 +195,14 @@ end ]] local function packbytes(str) - local size = #str - return string.char(bit32.extract(size,0,8)).. - string.char(bit32.extract(size,8,8)).. - string.char(bit32.extract(size,16,8)).. - string.char(bit32.extract(size,24,8)).. - str + str = string.pack("=0 and id < 65536) - return string.char(bit32.extract(id, 0, 8)) .. string.char(bit32.extract(id, 8, 8)) + local str = string.pack("