From 6b2eb8018863296b39e3477a5d8bb011df56048c Mon Sep 17 00:00:00 2001 From: Cloud Wu Date: Wed, 20 Apr 2016 22:35:01 +0800 Subject: [PATCH] fix #487 --- service/service_mgr.lua | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/service/service_mgr.lua b/service/service_mgr.lua index d94b0a3d..fc63ce25 100644 --- a/service/service_mgr.lua +++ b/service/service_mgr.lua @@ -142,14 +142,23 @@ local function register_global() end local function register_local() - function cmd.GLAUNCH(name, ...) + local function waitfor_remote(cmd, name, ...) local global_name = "@" .. name - return waitfor(global_name, skynet.call, "SERVICE", "lua", "LAUNCH", global_name, ...) + local local_name + if name == "snaxd" then + local_name = global_name .. "." .. (...) + else + local_name = global_name + end + return waitfor(local_name, skynet.call, "SERVICE", "lua", cmd, global_name, ...) end - function cmd.GQUERY(name, ...) - local global_name = "@" .. name - return waitfor(global_name, skynet.call, "SERVICE", "lua", "QUERY", global_name, ...) + function cmd.GLAUNCH(...) + return waitfor_remote("LAUNCH", ...) + end + + function cmd.GQUERY(...) + return waitfor_remote("QUERY", ...) end function cmd.LIST()