diff options
author | Christian Pointner <equinox@spreadspace.org> | 2010-11-09 07:55:18 +0000 |
---|---|---|
committer | Christian Pointner <equinox@spreadspace.org> | 2010-11-09 07:55:18 +0000 |
commit | 2bd5ceca8402588fdef3d823578c36d7115c71e7 (patch) | |
tree | 1e6997d1f8e8db460200647a84ee79f3d4dacd65 | |
parent | small cleanup (added module list) (diff) |
fixed get_readables (signal fd was not added)
added client names
git-svn-id: https://svn.spreadspace.org/gcsd/trunk@15 ac14a137-c7f1-4531-abe0-07747231d213
-rw-r--r-- | src/client_list.lua | 6 | ||||
-rw-r--r-- | src/main_loop.lua | 6 | ||||
-rw-r--r-- | src/modules/debug_shell.lua | 4 | ||||
-rw-r--r-- | src/modules/dummy.lua | 1 |
4 files changed, 9 insertions, 8 deletions
diff --git a/src/client_list.lua b/src/client_list.lua index 40996a2..cb4ed8d 100644 --- a/src/client_list.lua +++ b/src/client_list.lua @@ -35,14 +35,14 @@ client_list = {} client_list.clients = {} function client_list:register(client) - log.printf(log.INFO, "adding client") + log.printf(log.INFO, "adding client: " .. client.name) table.insert(self.clients, client) end function client_list:unregister(client) for i, c in ipairs(self.clients) do if(c == client) then - log.printf(log.INFO, "removing client") + log.printf(log.INFO, "removing client: " .. client.name) client:cleanup() table.remove(self.clients, i) break @@ -60,7 +60,7 @@ function client_list:unregister_by_module(module) end for _, i in ipairs(free_list) do - log.printf(log.INFO, "removing client") + log.printf(log.INFO, "removing client: " .. self.clients[i].name) self.clients[i]:cleanup() table.remove(self.clients, i) end diff --git a/src/main_loop.lua b/src/main_loop.lua index 0ccaf01..0679d92 100644 --- a/src/main_loop.lua +++ b/src/main_loop.lua @@ -33,8 +33,8 @@ local socket = require("socket") local defines = require("defines") -function get_readables(sig) - local readables = { sig } +function get_readables() + local readables = {} for _, module in ipairs(module_list.modules) do for _, fd in ipairs(module:get_read_handles()) do table.insert(readables, fd) @@ -74,7 +74,7 @@ function main_loop(opt) local return_value = 0 while return_value == 0 do - local readable, writeable, err = socket.select(get_readables(), get_writeables()) + local readable, writeable, err = socket.select({ sig, unpack(get_readables()) }, get_writeables()) if(err) then log.printf(log.ERROR, "select returned with error: %s", err) return_value = -1 diff --git a/src/modules/debug_shell.lua b/src/modules/debug_shell.lua index 619ef72..6e0ad73 100644 --- a/src/modules/debug_shell.lua +++ b/src/modules/debug_shell.lua @@ -124,7 +124,8 @@ function debug_shell:new(config) end local client = {} - client.module_instance = nil + client.module_instance = inst + client.name = inst.name .. ":" .. client_sock:getfd() client.sock = client_sock function client:process_response(response) self.sock.out_buffer = self.sock.out_buffer .. response @@ -144,7 +145,6 @@ function debug_shell:new(config) self.sock.sock:close() end client_sock.client_instance = client - client.module_instance = inst client_list:register(client) return defines.OK diff --git a/src/modules/dummy.lua b/src/modules/dummy.lua index e5a5a00..ec8adba 100644 --- a/src/modules/dummy.lua +++ b/src/modules/dummy.lua @@ -52,6 +52,7 @@ function dummy:new(config) local client = {} client.module_instance = inst + client.name = inst.name .. ":0" function client:process_response() end function client:process_timeout() end function client:get_read_handles() return handle end |