From 275eb604c62633d676c00f560301d2784bb8cc14 Mon Sep 17 00:00:00 2001 From: Maschell Date: Sat, 7 Jan 2023 16:17:29 +0100 Subject: [PATCH] Use latest libfunctionpatcher --- Dockerfile | 2 +- Makefile | 2 +- src/main.cpp | 8 +++++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index c5db12e..24bb612 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM wiiuenv/devkitppc:20221228 COPY --from=wiiuenv/librpxloader:20220903 /artifacts $DEVKITPRO -COPY --from=wiiuenv/libfunctionpatcher:20220904 /artifacts $DEVKITPRO +COPY --from=wiiuenv/libfunctionpatcher:20230106 /artifacts $DEVKITPRO COPY --from=wiiuenv/wiiumodulesystem:20230106 /artifacts $DEVKITPRO COPY --from=wiiuenv/libwuhbutils:20220904 /artifacts $DEVKITPRO COPY --from=wiiuenv/libcontentredirection:20221010 /artifacts $DEVKITPRO diff --git a/Makefile b/Makefile index b1959c8..4b6a085 100644 --- a/Makefile +++ b/Makefile @@ -38,7 +38,7 @@ CFLAGS += $(INCLUDE) -D__WIIU__ -D__WUT__ CXXFLAGS := $(CFLAGS) -std=c++20 ASFLAGS := -g $(ARCH) -LDFLAGS = -g $(ARCH) $(RPXSPECS) -Wl,-Map,$(notdir $*.map) -T$(WUMS_ROOT)/share/libfunctionpatcher.ld $(WUMSSPECS) +LDFLAGS = -g $(ARCH) $(RPXSPECS) -Wl,-Map,$(notdir $*.map) $(WUMSSPECS) ifeq ($(DEBUG),1) CXXFLAGS += -DDEBUG -g diff --git a/src/main.cpp b/src/main.cpp index ef77eb5..909b2c1 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -27,9 +27,15 @@ WUMS_DEPENDS_ON(homebrew_functionpatcher); WUMS_INITIALIZE() { initLogging(); + + if (FunctionPatcher_InitLibrary() != FUNCTION_PATCHER_RESULT_SUCCESS) { + OSFatal("homebrew_rpx_loader: FunctionPatcher_InitLibrary failed"); + } + DEBUG_FUNCTION_LINE("Patch functions"); for (uint32_t i = 0; i < rpx_utils_function_replacements_size; i++) { - if (!FunctionPatcherPatchFunction(&rpx_utils_function_replacements[i], nullptr)) { + bool wasPatched = false; + if (FunctionPatcher_AddFunctionPatch(&rpx_utils_function_replacements[i], nullptr, &wasPatched) != FUNCTION_PATCHER_RESULT_SUCCESS || !wasPatched) { OSFatal("homebrew_rpx_loader: Failed to patch function"); } }