only accept leaderboards updates from the same appid

This commit is contained in:
otavepto 2024-03-30 09:04:30 +02:00 committed by otavepto
parent caa9401369
commit d8a91edcf5
2 changed files with 6 additions and 2 deletions

View File

@ -287,9 +287,10 @@ message Leaderboards_Messages {
}
Types type = 1;
LeaderboardInfo leaderboard_info = 2;
uint32 appid = 2;
LeaderboardInfo leaderboard_info = 3;
oneof data_messages {
UserScoreEntry user_score_entry = 3;
UserScoreEntry user_score_entry = 4;
}
}

View File

@ -288,6 +288,7 @@ void Steam_User_Stats::send_my_leaderboard_score(const Steam_Leaderboard &board,
auto board_msg = new Leaderboards_Messages();
if (want_scores_back) board_msg->set_type(Leaderboards_Messages::UpdateUserScoreMutual);
else board_msg->set_type(Leaderboards_Messages::UpdateUserScore);
board_msg->set_appid(settings->get_local_game_id().AppID());
board_msg->set_allocated_leaderboard_info(board_info_msg);
board_msg->set_allocated_user_score_entry(score_entry_msg);
@ -309,6 +310,7 @@ void Steam_User_Stats::request_user_leaderboard_entry(const Steam_Leaderboard &b
auto board_msg = new Leaderboards_Messages();
board_msg->set_type(Leaderboards_Messages::RequestUserScore);
board_msg->set_appid(settings->get_local_game_id().AppID());
board_msg->set_allocated_leaderboard_info(board_info_msg);
auto common_msg = new Common_Message();
@ -1863,6 +1865,7 @@ void Steam_User_Stats::network_callback_leaderboards(Common_Message *msg)
{
// network->sendToAll() sends to current user also
if (msg->source_id() == settings->get_local_steam_id().ConvertToUint64()) return;
if (settings->get_local_game_id().AppID() != msg->leaderboards_messages().appid()) return;
if (!msg->leaderboards_messages().has_leaderboard_info()) {
PRINT_DEBUG("Steam_User_Stats::network_callback_leaderboards error empty leaderboard msg\n");