diff --git a/server/masterserver/jsondatamgr.cc b/server/masterserver/jsondatamgr.cc index 1d72292..ee1afbd 100644 --- a/server/masterserver/jsondatamgr.cc +++ b/server/masterserver/jsondatamgr.cc @@ -23,9 +23,11 @@ void JsonDataMgr::UnInit() std::shared_ptr JsonDataMgr::GetConf() { - if (f8::App::Instance()->GetInstanceId() < 1 || - f8::App::Instance()->GetInstanceId() > masterserver_cluster_json_.Size()) { - abort(); + for (int i = 0; i < masterserver_cluster_json_.Size(); ++i) { + auto conf = masterserver_cluster_json_.At(i); + if (conf->At("instance_id")->AsXValue().GetInt() == f8::App::Instance()->GetInstanceId()) { + return conf; + } } - return masterserver_cluster_json_[f8::App::Instance()->GetInstanceId() - 1]; + A8_ABORT(); }