diff --git a/service-src/service_harbor.c b/service-src/service_harbor.c index 29a54895..d4fb0d61 100644 --- a/service-src/service_harbor.c +++ b/service-src/service_harbor.c @@ -402,7 +402,9 @@ _remote_send_handle(struct harbor *h, uint32_t source, uint32_t destination, int _send_remote(context, fd, msg,sz,&cookie); } else { // throw an error return to source - skynet_send(context, destination, source, PTYPE_RESERVED_ERROR, session, NULL, 0); + if (session != 0) { + skynet_send(context, destination, source, PTYPE_RESERVED_ERROR, session, NULL, 0); + } skynet_error(context, "Drop message to harbor %d from %x to %x (session = %d, msgsz = %d)",harbor_id, source, destination,session,(int)sz); } return 0;