| 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" |
| @@ -51,6 +51,7 @@ |
| { |
| friend class CPluginTab; |
| + friend class AnyCurrentSiteBrowser; |
| private: |
| @@ -103,7 +104,6 @@ |
| public: |
| HWND GetBrowserHWND() const; |
| bool IsRootBrowser(IWebBrowser2*); |
| - |
| static CPluginMimeFilterClient* s_mimeFilter; |
| private: |
| @@ -136,7 +136,6 @@ |
| void Unadvise(); |
| void ShowStatusBar(); |
| - bool IsStatusBarEnabled(); |
| /** |
| * A browser interface pointer to our site object |
| @@ -144,6 +143,11 @@ |
| * It's values are set and reset solely in SetSite(). |
| */ |
| CComPtr<IWebBrowser2> m_webBrowser2; |
| + /** |
| + * Synchronizes SetSite() with references to our site pointer. |
|
sergei
2016/01/04 15:34:31
I would like to have here a little bit extended co
Eric
2016/01/04 17:49:20
There's nothing I could add here that's not fully
|
| + */ |
| + std::mutex siteGuard; |
| + |
| HWND m_hBrowserWnd; |
| HWND m_hTabWnd; |
| HWND m_hStatusBarWnd; |
| @@ -176,14 +180,9 @@ |
| static bool s_isMainThreadDone; |
| static HINSTANCE s_hUxtheme; |
| - static std::set<CPluginClass*> s_instances; |
| static std::map<DWORD,CPluginClass*> s_threadInstances; |
| 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) |