From f5d0291b5a144bd362f1866979a370dee3535a9d Mon Sep 17 00:00:00 2001 From: dijunkun Date: Tue, 18 Nov 2025 14:07:18 +0800 Subject: [PATCH] [fix] fix crash when Unhook KeyboardCapturer on MacOS --- .../keyboard/mac/keyboard_capturer.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/device_controller/keyboard/mac/keyboard_capturer.cpp b/src/device_controller/keyboard/mac/keyboard_capturer.cpp index d312a84..efbdaf3 100644 --- a/src/device_controller/keyboard/mac/keyboard_capturer.cpp +++ b/src/device_controller/keyboard/mac/keyboard_capturer.cpp @@ -120,8 +120,14 @@ int KeyboardCapturer::Hook(OnKeyAction on_key_action, void* user_ptr) { } int KeyboardCapturer::Unhook() { - CFRelease(run_loop_source_); - CFRelease(event_tap_); + if (run_loop_source_) { + CFRelease(run_loop_source_); + } + + if (event_tap_) { + CFRelease(event_tap_); + } + return 0; }