From 96191b9ce259df7a234c55d06b97bb5b8ee0848f Mon Sep 17 00:00:00 2001 From: Shauren Date: Mon, 12 Feb 2024 20:23:31 +0100 Subject: Core/Clubs: Reserve memory for entire member array in club::v1::GetMembersResponse --- src/server/game/Services/ClubService.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/server/game/Services/ClubService.cpp b/src/server/game/Services/ClubService.cpp index 99df493c2c3..4b4156a7513 100644 --- a/src/server/game/Services/ClubService.cpp +++ b/src/server/game/Services/ClubService.cpp @@ -44,7 +44,7 @@ uint32 ClubService::HandleGetClubType(club::v1::GetClubTypeRequest const* reques uint32 ClubService::HandleSubscribe(club::v1::SubscribeRequest const* /*request*/, NoData* /*response*/, std::function& /*continuation*/) { - Player* player = _session->GetPlayer(); + Player const* player = _session->GetPlayer(); if (!player) return ERROR_INTERNAL; @@ -131,7 +131,7 @@ uint32 ClubService::HandleSubscribe(club::v1::SubscribeRequest const* /*request* uint32 ClubService::HandleGetMembers(club::v1::GetMembersRequest const* /*request*/, club::v1::GetMembersResponse* response, std::function& /*continuation*/) { - Player* player = _session->GetPlayer(); + Player const* player = _session->GetPlayer(); if (!player) return ERROR_INTERNAL; @@ -141,6 +141,8 @@ uint32 ClubService::HandleGetMembers(club::v1::GetMembersRequest const* /*reques if (!guild) return ERROR_CLUB_NO_CLUB; + response->mutable_member()->Reserve(guild->GetMembersCount()); + for (auto const& [guid, member] : guild->GetMembers()) { club::v1::Member* clubMember = response->add_member(); @@ -168,7 +170,7 @@ uint32 ClubService::HandleGetMembers(club::v1::GetMembersRequest const* /*reques uint32 ClubService::HandleGetStreams(club::v1::GetStreamsRequest const* /*request*/, club::v1::GetStreamsResponse* response, std::function& /*continuation*/) { - Player* player = _session->GetPlayer(); + Player const* player = _session->GetPlayer(); if (!player) return ERROR_INTERNAL; -- cgit v1.2.3