mirror of
https://github.com/wiiu-env/WiiUPluginLoaderBackend.git
synced 2024-11-05 12:35:06 +01:00
Use remove_first_if instead of remove_locked_first_if when possible
This commit is contained in:
parent
f7c9dc445c
commit
004df036b8
@ -186,7 +186,7 @@ namespace WUPSConfigAPIBackend {
|
||||
|
||||
if (!remove_locked_first_if(sConfigCategoryMutex, sConfigCategories, [&handle](auto &cur) { return handle == cur.get(); })) {
|
||||
{
|
||||
// Ignore any attempts to destroy to create root item.
|
||||
// Ignore any attempts to destroy the root item.
|
||||
std::lock_guard lock(sConfigsMutex);
|
||||
if (std::any_of(sConfigs.begin(), sConfigs.end(), [&handle](auto &cur) { return handle == cur.get(); })) {
|
||||
return WUPSCONFIG_API_RESULT_SUCCESS;
|
||||
|
@ -46,8 +46,9 @@ extern "C" PluginBackendApiErrorType WUPSLoadAndLinkByDataHandle(const wups_back
|
||||
|
||||
extern "C" PluginBackendApiErrorType WUPSDeletePluginData(const wups_backend_plugin_data_handle *plugin_data_handle_list, uint32_t plugin_data_handle_list_size) {
|
||||
if (plugin_data_handle_list != nullptr && plugin_data_handle_list_size != 0) {
|
||||
std::lock_guard lock(gLoadedDataMutex);
|
||||
for (auto &handle : std::span(plugin_data_handle_list, plugin_data_handle_list_size)) {
|
||||
if (!remove_locked_first_if(gLoadedDataMutex, gLoadedData, [&handle](auto &cur) { return cur->getHandle() == handle; })) {
|
||||
if (!remove_first_if(gLoadedData, [&handle](auto &cur) { return cur->getHandle() == handle; })) {
|
||||
DEBUG_FUNCTION_LINE_ERR("Failed to delete plugin data by handle %08X", handle);
|
||||
}
|
||||
}
|
||||
|
@ -425,7 +425,7 @@ namespace StorageUtils {
|
||||
auto res = StorageUtils::Helper::WriteStorageToSD(root, false);
|
||||
// TODO: handle write error?
|
||||
|
||||
if (!remove_locked_first_if(gStorageMutex, gStorage, [&root](auto &cur) { return cur.getHandle() == (uint32_t) root; })) {
|
||||
if (!remove_first_if(gStorage, [&root](auto &cur) { return cur.getHandle() == (uint32_t) root; })) {
|
||||
DEBUG_FUNCTION_LINE_WARN("Failed to close storage: Not opened (\"%08X\")", root);
|
||||
return WUPS_STORAGE_ERROR_NOT_FOUND;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user