diff --git a/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp b/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp index 6e6c3853ed..b7752a9ff0 100644 --- a/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp +++ b/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp @@ -519,6 +519,12 @@ public: ~WebView2() override { + if (webView2ConstructionHelper.webView2BeingCreated == this) + webView2ConstructionHelper.webView2BeingCreated = nullptr; + + webView2ConstructionHelper.viewsWaitingForCreation.erase (this); + + cancelPendingUpdate(); removeEventHandlers(); closeWebView(); } @@ -1022,8 +1028,6 @@ private: webView2ConstructionHelper.viewsWaitingForCreation.erase (this); webView2ConstructionHelper.webView2BeingCreated = this; - WeakReference weakThis (this); - webViewHandle.environment->CreateCoreWebView2Controller ((HWND) peer->getNativeHandle(), Callback ( [weakThis = WeakReference { this }] (HRESULT, ICoreWebView2Controller* controller) -> HRESULT