From c3747fab5615ede222559a00501160773b82a2c2 Mon Sep 17 00:00:00 2001 From: Vaxry Date: Tue, 7 Oct 2025 01:44:03 +0100 Subject: hookSystem: fix anchoring in seekNewPageAddr() otherwise we might miss the chance to get an anchor --- src/plugins/HookSystem.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/plugins/HookSystem.cpp') diff --git a/src/plugins/HookSystem.cpp b/src/plugins/HookSystem.cpp index dccb4cd0..242b8d30 100644 --- a/src/plugins/HookSystem.cpp +++ b/src/plugins/HookSystem.cpp @@ -245,6 +245,7 @@ bool CFunctionHook::unhook() { m_hookLen = 0; m_trampoLen = 0; m_trampolineAddr = nullptr; // no unmapping, it's managed by the HookSystem + m_original = nullptr; m_originalBytes.clear(); return true; @@ -305,12 +306,6 @@ static uintptr_t seekNewPageAddr() { lastStart = start; lastEnd = end; continue; - } else if (!anchoredToHyprland) { - Debug::log(LOG, "seekNewPageAddr: Anchored to hyprland at 0x{:x}", start); - anchoredToHyprland = true; - lastStart = start; - lastEnd = end; - continue; } Debug::log(LOG, "seekNewPageAddr: found gap: 0x{:x}-0x{:x} ({} bytes)", lastEnd, start, start - lastEnd); @@ -318,6 +313,11 @@ static uintptr_t seekNewPageAddr() { return lastEnd; } + if (!anchoredToHyprland && line.contains("Hyprland")) { + Debug::log(LOG, "seekNewPageAddr: Anchored to hyprland at 0x{:x}", start); + anchoredToHyprland = true; + } + lastStart = start; lastEnd = end; } -- cgit v1.2.3