From 48b84e310078cbd5d037e10ef52c112ce000e5cd Mon Sep 17 00:00:00 2001 From: Vincent Wei Date: Wed, 24 Mar 2021 11:35:34 +0800 Subject: [PATCH] enhance move_to_layer to handle failure of __mg_move_client_to_layer --- src/server/request.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/server/request.c b/src/server/request.c index c3363a95..f6e48101 100644 --- a/src/server/request.c +++ b/src/server/request.c @@ -334,10 +334,14 @@ static int move_to_layer (int cli, int clifd, void* buff, size_t len) if (!__mg_is_valid_layer (dst_layer)) goto ret; - if (__mg_move_client_to_layer (mgClients + cli, dst_layer, TRUE)) { + if (__mg_move_client_to_layer (mgClients + cli, dst_layer)) { moved_info.layer = dst_layer; moved_info.zo_shmid = dst_layer->zorder_shmid; } + else { + moved_info.layer = INV_LAYER_HANDLE; + moved_info.zo_shmid = 0; + } ret: return ServerSendReply (clifd, &moved_info, sizeof (MOVEDCLIENTINFO));