From 9c5b76a5ac76bbe83cde6386b363196c40ae40a2 Mon Sep 17 00:00:00 2001 From: ed Date: Mon, 22 Nov 2021 17:12:29 +0000 Subject: [PATCH] Windows Accessibility: Ensure that UiaDisconnectProvider() is called with a valid provider pointer --- .../native/accessibility/juce_win32_Accessibility.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp b/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp index d181a01559..ff758df5fd 100644 --- a/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp +++ b/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp @@ -63,14 +63,14 @@ public: ~AccessibilityNativeImpl() { + ComSmartPtr provider; + accessibilityElement->QueryInterface (IID_PPV_ARGS (provider.resetAndGetPointerAddress())); + accessibilityElement->invalidateElement(); --providerCount; if (auto* uiaWrapper = WindowsUIAWrapper::getInstanceWithoutCreating()) { - ComSmartPtr provider; - accessibilityElement->QueryInterface (IID_PPV_ARGS (provider.resetAndGetPointerAddress())); - uiaWrapper->disconnectProvider (provider); if (providerCount == 0)