From 8fb1ed53b1ef243da088a82fd301bbf2b077ed0f Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 9 Oct 2020 17:53:13 +0800 Subject: [PATCH] 1 --- server/imserver/guild.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/server/imserver/guild.cc b/server/imserver/guild.cc index 0a7de0b..38c73dc 100644 --- a/server/imserver/guild.cc +++ b/server/imserver/guild.cc @@ -550,8 +550,14 @@ void Guild::_CMGuildChange(f8::MsgHdr& hdr, const cs::CMGuildChange& msg) ss::SS_IM_ForwardGuildCMMsg *forward_msg_copy = (ss::SS_IM_ForwardGuildCMMsg*)param.param1.GetUserData(); cs::CMGuildChange* msg_copy = (cs::CMGuildChange*)param.param3.GetUserData(); Guild* guild = GuildMgr::Instance()->GetGuild(param.sender); - if (guild) { - guild->GuildRenameCb(param.param2, forward_msg_copy->context(), *msg_copy); + if (guild && data.GetType() == a8::XOT_OBJECT) { + if (data.HasKey("errcode") && data.At("errcode")->AsXValue().GetInt() == 0) { + guild->GuildRenameCb(param.param2, forward_msg_copy->context(), *msg_copy); + } else { + guild->SendErrorMsg(param.param2, + forward_msg_copy->context(), + data.Get("errmsg", "服务器内部错误")); + } } delete msg_copy; delete forward_msg_copy;