atl80: Skip NULL map entries in AtlComModuleRegisterServer.

oldstable
Jacek Caban 2013-01-10 13:26:46 +01:00 committed by Alexandre Julliard
parent d3520ef465
commit 07065b4d93
1 changed files with 11 additions and 10 deletions

View File

@ -37,18 +37,19 @@ HRESULT WINAPI AtlComModuleRegisterServer(_ATL_COM_MODULE *mod, BOOL bRegTypeLib
TRACE("(%p %x %s)\n", mod, bRegTypeLib, debugstr_guid(clsid));
for(iter = mod->m_ppAutoObjMapFirst; iter < mod->m_ppAutoObjMapLast; iter++) {
if(!clsid || IsEqualCLSID((*iter)->pclsid, clsid)) {
TRACE("Registering clsid %s\n", debugstr_guid((*iter)->pclsid));
hres = (*iter)->pfnUpdateRegistry(TRUE);
if(!*iter || (clsid && !IsEqualCLSID((*iter)->pclsid, clsid)))
continue;
TRACE("Registering clsid %s\n", debugstr_guid((*iter)->pclsid));
hres = (*iter)->pfnUpdateRegistry(TRUE);
if(FAILED(hres))
return hres;
catmap = (*iter)->pfnGetCategoryMap();
if(catmap) {
hres = AtlRegisterClassCategoriesHelper((*iter)->pclsid, catmap, TRUE);
if(FAILED(hres))
return hres;
catmap = (*iter)->pfnGetCategoryMap();
if(catmap) {
hres = AtlRegisterClassCategoriesHelper((*iter)->pclsid, catmap, TRUE);
if(FAILED(hres))
return hres;
}
}
}