[BROWSEUI]

- CComObject cannot be a class member and must be allocated using new. Fixes invalid free.

svn path=/trunk/; revision=63853
This commit is contained in:
Thomas Faber 2014-08-10 18:39:05 +00:00
parent faf7e3ec94
commit 6af1d6e6c8
2 changed files with 3 additions and 4 deletions

View file

@ -481,14 +481,13 @@ CInternetToolbar::CInternetToolbar()
fLocked = false;
fMenuBandWindow = NULL;
fNavigationWindow = NULL;
fMenuCallback.AddRef();
fMenuCallback = new CComObject<CMenuCallback>();
fToolbarWindow = NULL;
fAdviseCookie = 0;
}
CInternetToolbar::~CInternetToolbar()
{
fMenuCallback.Release();
}
void CInternetToolbar::AddDockItem(IUnknown *newItem, int bandID, int flags)
@ -540,7 +539,7 @@ HRESULT CInternetToolbar::CreateMenuBar(IShellMenu **menuBar)
IID_IShellMenu, reinterpret_cast<void **>(menuBar));
if (FAILED(hResult))
return hResult;
hResult = fMenuCallback.QueryInterface(IID_IShellMenuCallback, reinterpret_cast<void **>(&callback));
hResult = fMenuCallback->QueryInterface(IID_IShellMenuCallback, reinterpret_cast<void **>(&callback));
if (FAILED(hResult))
return hResult;
hResult = (*menuBar)->Initialize(callback, -1, ANCESTORDEFAULT, SMINIT_HORIZONTAL | SMINIT_TOPLEVEL);

View file

@ -90,7 +90,7 @@ public:
CComPtr<IUnknown> fLogoBar; // the reactos logo
CComPtr<IUnknown> fControlsBar; // navigation controls
CComPtr<IUnknown> fNavigationBar; // address bar
CComObject<CMenuCallback> fMenuCallback;
CComPtr<CMenuCallback> fMenuCallback;
CComPtr<IOleCommandTarget> fCommandTarget;
GUID fCommandCategory;
HWND fToolbarWindow;