fix a legacy problem. make harbor service more stable

This commit is contained in:
Cloud Wu
2018-02-12 17:47:57 +08:00
committed by 云风
parent 484404295e
commit 0846a6533d
4 changed files with 21 additions and 9 deletions

View File

@@ -690,21 +690,27 @@ mainloop(struct skynet_context * context, void * ud, int type, int session, uint
harbor_command(h, msg,sz,session,source);
return 0;
}
default: {
case PTYPE_SYSTEM : {
// remote message out
const struct remote_message *rmsg = msg;
if (rmsg->destination.handle == 0) {
if (remote_send_name(h, source , rmsg->destination.name, type, session, rmsg->message, rmsg->sz)) {
if (remote_send_name(h, source , rmsg->destination.name, rmsg->type, session, rmsg->message, rmsg->sz)) {
return 0;
}
} else {
if (remote_send_handle(h, source , rmsg->destination.handle, type, session, rmsg->message, rmsg->sz)) {
if (remote_send_handle(h, source , rmsg->destination.handle, rmsg->type, session, rmsg->message, rmsg->sz)) {
return 0;
}
}
skynet_free((void *)rmsg->message);
return 0;
}
default:
skynet_error(context, "recv invalid message from %x, type = %d", source, type);
if (session != 0) {
skynet_send(context,0,source,PTYPE_ERROR, session, NULL, 0);
}
return 0;
}
}