From d102b61703bc07c5c50dcf66006a7efb5100bda9 Mon Sep 17 00:00:00 2001 From: jules Date: Mon, 24 Mar 2014 19:23:39 +0000 Subject: [PATCH] Another attempt at fixing win32 plugin key hook loops. --- .../juce_audio_plugin_client/utility/juce_WindowsHooks.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/modules/juce_audio_plugin_client/utility/juce_WindowsHooks.h b/modules/juce_audio_plugin_client/utility/juce_WindowsHooks.h index ebfaf994f6..a5cde30b50 100644 --- a/modules/juce_audio_plugin_client/utility/juce_WindowsHooks.h +++ b/modules/juce_audio_plugin_client/utility/juce_WindowsHooks.h @@ -34,7 +34,6 @@ namespace { static HHOOK mouseWheelHook = 0, keyboardHook = 0; static int numHookUsers = 0; - static bool keyboardHookReentrant = false; struct WindowsHooks { @@ -90,14 +89,10 @@ namespace static LRESULT CALLBACK keyboardHookCallback (int nCode, WPARAM wParam, LPARAM lParam) { - if (keyboardHookReentrant) - return 1; - - ScopedValueSetter setter (keyboardHookReentrant, true, false); - MSG& msg = *(MSG*) lParam; - if (nCode == HC_ACTION && offerKeyMessageToJUCEWindow (msg)) + if (nCode == HC_ACTION && wParam == PM_REMOVE + && offerKeyMessageToJUCEWindow (msg)) { zerostruct (msg); msg.message = WM_USER;