9 Mar
2007
9 Mar
'07
11:26 a.m.
Chris Robinson wrote:
return CLASS_E_NOAGGREGATION;
pDSoundRender = CoTaskMemAlloc(sizeof(DSoundRenderImpl)); + if (!pDSoundRender) + return E_OUTOFMEMORY; + ZeroMemory(pDSoundRender, sizeof(DSoundRenderImpl));
pDSoundRender->lpVtbl = &DSoundRender_Vtbl; pDSoundRender->IBasicAudio_vtbl = &IBasicAudio_Vtbl; @@ -325,9 +328,15 @@ HRESULT DSoundRender_create(IUnknown * pUnkOuter, LPVOID * ppv) pDSoundRender->pClock = NULL; pDSoundRender->init = FALSE; pDSoundRender->started = FALSE; - ZeroMemory(&pDSoundRender->filterInfo, sizeof(FILTER_INFO));
The check for allocation failure is good, but clearing the memory that is going to be initialised anyway is inefficient and unnecessary. -- Rob Shearman