mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-01-06 18:55:41 +00:00
patch_manager: only apply one patch per group
So far this was purely handled in the GUI
This commit is contained in:
parent
e43db24b2c
commit
6a486d3402
@ -551,6 +551,9 @@ std::size_t patch_engine::apply_patch(const std::string& name, u8* dst, u32 file
|
|||||||
const auto serial = Emu.GetTitleID();
|
const auto serial = Emu.GetTitleID();
|
||||||
const auto app_version = Emu.GetAppVersion();
|
const auto app_version = Emu.GetAppVersion();
|
||||||
|
|
||||||
|
// Only one patch per patch group is allowed
|
||||||
|
std::set<std::string> applied_groups;
|
||||||
|
|
||||||
// Apply modifications sequentially
|
// Apply modifications sequentially
|
||||||
for (const auto& [description, patch] : container.patch_info_map)
|
for (const auto& [description, patch] : container.patch_info_map)
|
||||||
{
|
{
|
||||||
@ -601,6 +604,16 @@ std::size_t patch_engine::apply_patch(const std::string& name, u8* dst, u32 file
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!patch.patch_group.empty())
|
||||||
|
{
|
||||||
|
if (applied_groups.contains(patch.patch_group))
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
applied_groups.insert(patch.patch_group);
|
||||||
|
}
|
||||||
|
|
||||||
size_t applied = 0;
|
size_t applied = 0;
|
||||||
|
|
||||||
for (const auto& p : patch.data_list)
|
for (const auto& p : patch.data_list)
|
||||||
|
Loading…
Reference in New Issue
Block a user