| Index: src/plugin/PluginClass.h |
| =================================================================== |
| --- a/src/plugin/PluginClass.h |
| +++ b/src/plugin/PluginClass.h |
| @@ -28,7 +28,7 @@ |
| #define _CRTDBG_MAP_ALLOC |
| #include <stdlib.h> |
| #include <crtdbg.h> |
| -#include <set> |
| +#include <mutex> |
| #include "NotificationMessage.h" |
| @@ -50,6 +50,7 @@ |
| { |
| friend class CPluginTab; |
| + friend class AnyCurrentSiteBrowser; |
| private: |
| @@ -102,7 +103,6 @@ |
| public: |
| HWND GetBrowserHWND() const; |
| bool IsRootBrowser(IWebBrowser2*); |
| - |
| static CPluginMimeFilterClient* s_mimeFilter; |
| private: |
| @@ -135,7 +135,6 @@ |
| void Unadvise(); |
| void ShowStatusBar(); |
| - bool IsStatusBarEnabled(); |
| /** |
| * A browser interface pointer to our site object |
| @@ -143,6 +142,11 @@ |
| * It's values are set and reset solely in SetSite(). |
| */ |
| CComPtr<IWebBrowser2> m_webBrowser2; |
| + /** |
| + * Synchronizes SetSite() with references to our site pointer. |
| + */ |
| + std::mutex siteGuard; |
| + |
| HWND m_hBrowserWnd; |
| HWND m_hTabWnd; |
| HWND m_hStatusBarWnd; |
| @@ -175,13 +179,8 @@ |
| static bool s_isMainThreadDone; |
| static HINSTANCE s_hUxtheme; |
| - static std::set<CPluginClass*> s_instances; |
| static CComAutoCriticalSection s_criticalSectionLocal; |
| static CComAutoCriticalSection s_criticalSectionWindow; |
| - |
| - // Async browser |
| - static CComQIPtr<IWebBrowser2> s_asyncWebBrowser2; |
| - static CComQIPtr<IWebBrowser2> GetAsyncBrowser(); |
| }; |
| OBJECT_ENTRY_AUTO(__uuidof(PluginClass), CPluginClass) |