diff --git a/lualib/skynet.lua b/lualib/skynet.lua index d1e08b21..1ef8ad46 100644 --- a/lualib/skynet.lua +++ b/lualib/skynet.lua @@ -91,7 +91,8 @@ local function _error_dispatch(error_session, error_source) end end for session, srv in pairs(watching_session) do - if srv == error_source then + if srv == error_source or + (type(srv) == "string" and skynet.localname(srv) == error_source) then tinsert(error_queue, session) end end