diff --git a/lualib/http/internal.lua b/lualib/http/internal.lua index 5bb35752..6f76b86d 100644 --- a/lualib/http/internal.lua +++ b/lualib/http/internal.lua @@ -48,9 +48,6 @@ function M.recvheader(readbytes, lines, header) while true do local bytes = readbytes() header = header .. bytes - if #header > LIMIT then - return - end e = header:find("\r\n\r\n", -#bytes-3, true) if e then result = header:sub(e+4) @@ -59,6 +56,9 @@ function M.recvheader(readbytes, lines, header) if header:find "^\r\n" then return header:sub(3) end + if #header > LIMIT then + return + end end end for v in header:gmatch("(.-)\r\n") do