projects
/
project
/
luci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* libs/httpd: Fixed a memleak
[project/luci.git]
/
libs
/
httpd
/
luasrc
/
httpd.lua
diff --git
a/libs/httpd/luasrc/httpd.lua
b/libs/httpd/luasrc/httpd.lua
index
8b54f0e
..
9263dcc
100644
(file)
--- a/
libs/httpd/luasrc/httpd.lua
+++ b/
libs/httpd/luasrc/httpd.lua
@@
-87,7
+87,6
@@
end
function step()
local idle = true
function step()
local idle = true
-
if not THREAD_LIMIT or threadc < THREAD_LIMIT then
local now = os.time()
for i, server in ipairs(reading) do
if not THREAD_LIMIT or threadc < THREAD_LIMIT then
local now = os.time()
for i, server in ipairs(reading) do
@@
-106,6
+105,8
@@
function step()
if coroutine.status(thread) == "dead" then
threads[client] = nil
threadc = threadc - 1
if coroutine.status(thread) == "dead" then
threads[client] = nil
threadc = threadc - 1
+ threadm[client] = nil
+ threadi[client] = nil
elseif threadm[client] and threadm[client] + THREAD_TIMEOUT < now then
threads[client] = nil
threadc = threadc - 1
elseif threadm[client] and threadm[client] + THREAD_TIMEOUT < now then
threads[client] = nil
threadc = threadc - 1
@@
-119,4
+120,4
@@
function step()
if idle then
socket.sleep(THREAD_IDLEWAIT)
end
if idle then
socket.sleep(THREAD_IDLEWAIT)
end
-end
\ No newline at end of file
+end