diff --git a/Dockerfile b/Dockerfile index b843649..a6f63d3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ FROM wiiuenv/devkitppc:20221228 COPY --from=wiiuenv/wiiumodulesystem:20230106 /artifacts $DEVKITPRO -COPY --from=wiiuenv/wiiupluginsystem:20220924 /artifacts $DEVKITPRO -COPY --from=wiiuenv/libfunctionpatcher:20230106 /artifacts $DEVKITPRO +COPY --from=wiiuenv/wiiupluginsystem:20230215 /artifacts $DEVKITPRO +COPY --from=wiiuenv/libfunctionpatcher:20230108 /artifacts $DEVKITPRO COPY --from=wiiuenv/libmappedmemory:20220904 /artifacts $DEVKITPRO COPY --from=wiiuenv/libwupsbackend:20220904 /artifacts $DEVKITPRO diff --git a/source/plugin/FunctionData.h b/source/plugin/FunctionData.h index 1836d2c..a0a3d79 100644 --- a/source/plugin/FunctionData.h +++ b/source/plugin/FunctionData.h @@ -68,14 +68,17 @@ public: bool AddPatch() { if (handle == 0) { function_replacement_data_t functionData = { - .VERSION = FUNCTION_REPLACEMENT_DATA_STRUCT_VERSION, + .version = FUNCTION_REPLACEMENT_DATA_STRUCT_VERSION, + .type = FUNCTION_PATCHER_REPLACE_BY_LIB_OR_ADDRESS, .physicalAddr = reinterpret_cast(this->paddress), .virtualAddr = reinterpret_cast(this->vaddress), .replaceAddr = reinterpret_cast(this->replaceAddr), .replaceCall = static_cast(this->replaceCall), - .library = this->library, - .function_name = this->name.c_str(), - .targetProcess = this->targetProcess}; + .targetProcess = this->targetProcess, + .ReplaceInRPL = { + .function_name = this->name.c_str(), + .library = this->library, + }}; if (FunctionPatcher_AddFunctionPatch(&functionData, &handle, nullptr) != FUNCTION_PATCHER_RESULT_SUCCESS) { DEBUG_FUNCTION_LINE_ERR("Failed to add patch for function"); diff --git a/source/utils/StorageUtils.cpp b/source/utils/StorageUtils.cpp index c58456a..3a8f6c2 100644 --- a/source/utils/StorageUtils.cpp +++ b/source/utils/StorageUtils.cpp @@ -19,7 +19,7 @@ static void processJson(wups_storage_item_t *items, nlohmann::json json) { for (auto it = json.begin(); it != json.end(); ++it) { wups_storage_item_t *item = &((wups_storage_item_t *) items->data)[index]; item->type = WUPS_STORAGE_TYPE_INVALID; - item->pending_delete = false; + item->deleted = false; item->data = nullptr; item->key = nullptr; @@ -90,7 +90,7 @@ static nlohmann::json processItems(wups_storage_item_t *items) { for (uint32_t i = 0; i < items->data_size; i++) { wups_storage_item_t *item = &((wups_storage_item_t *) items->data)[i]; - if (item->pending_delete || item->type == WUPS_STORAGE_TYPE_INVALID || !item->data || !item->key) { + if (item->deleted || item->type == WUPS_STORAGE_TYPE_INVALID || !item->data || !item->key) { continue; }