diff --git a/server/gameserver/roommgr.cc b/server/gameserver/roommgr.cc index 0b52e35d..5399b8b5 100644 --- a/server/gameserver/roommgr.cc +++ b/server/gameserver/roommgr.cc @@ -921,6 +921,14 @@ void RoomMgr::SendGetCustomBattleData(std::shared_ptr join_msg, { rsp_obj->ToJsonStr() }); + if (rsp_obj->GetType() != a8::XOT_OBJECT || + !rsp_obj->HasKey("errcode")) { + cb(1, "", nullptr); + return; + } + int errcode = rsp_obj->Get("errcode", "").GetInt(); + std::string errmsg = rsp_obj->Get("errmsg", "").GetString(); + auto custom_battle = std::make_shared(); if (rsp_obj->GetType() == a8::XOT_OBJECT) { #if 0