ole32: Fix various missing Release calls on monikers.
This commit is contained in:
parent
35d6217def
commit
09adcee263
|
@ -552,6 +552,7 @@ CompositeMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker)
|
||||||
IEnumMoniker *enumMoniker1,*enumMoniker2;
|
IEnumMoniker *enumMoniker1,*enumMoniker2;
|
||||||
IMoniker *tempMk1,*tempMk2;
|
IMoniker *tempMk1,*tempMk2;
|
||||||
HRESULT res1,res2,res;
|
HRESULT res1,res2,res;
|
||||||
|
BOOL done;
|
||||||
|
|
||||||
TRACE("(%p,%p)\n",iface,pmkOtherMoniker);
|
TRACE("(%p,%p)\n",iface,pmkOtherMoniker);
|
||||||
|
|
||||||
|
@ -567,27 +568,18 @@ CompositeMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker)
|
||||||
|
|
||||||
IMoniker_Enum(iface,TRUE,&enumMoniker2);
|
IMoniker_Enum(iface,TRUE,&enumMoniker2);
|
||||||
|
|
||||||
while(1){
|
do {
|
||||||
|
|
||||||
res1=IEnumMoniker_Next(enumMoniker1,1,&tempMk1,NULL);
|
res1=IEnumMoniker_Next(enumMoniker1,1,&tempMk1,NULL);
|
||||||
res2=IEnumMoniker_Next(enumMoniker2,1,&tempMk2,NULL);
|
res2=IEnumMoniker_Next(enumMoniker2,1,&tempMk2,NULL);
|
||||||
|
|
||||||
if((res1==S_OK)&&(res2==S_OK)){
|
if((res1==S_OK)&&(res2==S_OK)){
|
||||||
|
done = (res = IMoniker_IsEqual(tempMk1,tempMk2)) == S_FALSE;
|
||||||
if(IMoniker_IsEqual(tempMk1,tempMk2)==S_FALSE){
|
|
||||||
res= S_FALSE;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
continue;
|
{
|
||||||
}
|
res = (res1==S_FALSE) && (res2==S_FALSE);
|
||||||
else if ( (res1==S_FALSE) && (res2==S_FALSE) ){
|
done = TRUE;
|
||||||
res = S_OK;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
res = S_FALSE;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (res1==S_OK)
|
if (res1==S_OK)
|
||||||
|
@ -595,7 +587,7 @@ CompositeMonikerImpl_IsEqual(IMoniker* iface,IMoniker* pmkOtherMoniker)
|
||||||
|
|
||||||
if (res2==S_OK)
|
if (res2==S_OK)
|
||||||
IMoniker_Release(tempMk2);
|
IMoniker_Release(tempMk2);
|
||||||
}
|
} while (!done);
|
||||||
|
|
||||||
IEnumMoniker_Release(enumMoniker1);
|
IEnumMoniker_Release(enumMoniker1);
|
||||||
IEnumMoniker_Release(enumMoniker2);
|
IEnumMoniker_Release(enumMoniker2);
|
||||||
|
@ -989,12 +981,12 @@ static VOID GetAfterCommonPrefix(IMoniker* pGenMk,IMoniker* commonMk,IMoniker**
|
||||||
nbRestMk++;
|
nbRestMk++;
|
||||||
|
|
||||||
IMoniker_Release(tempMk1);
|
IMoniker_Release(tempMk1);
|
||||||
IMoniker_Release(tempMk1);
|
IMoniker_Release(tempMk2);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
IMoniker_Release(tempMk1);
|
IMoniker_Release(tempMk1);
|
||||||
IMoniker_Release(tempMk1);
|
IMoniker_Release(tempMk2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
Loading…
Reference in New Issue