Wednesday, February 06, 2008

Resources are not Properly Released in DShow Transform Filter ...

Resources are not Properly Released in DShow Transform Filter ...

The EndStreaming() fn is not called properly to release the resources.Afterwards I looked on the Dshow MSDN CTransformFilter Docs.it is not EndStreaming() fn.
we have to implement StopStreaming() fn to release the Resources.
Next I got the error like this.
---------------------------
GraphEdit
---------------------------
Some filters reported an error while stopping. The graph may become unpredictable. Unspecified error (Return code: 0x80004005)
---------------------------
OK
---------------------------
So I put the breakpoint and checked the application.The cause of the Error is

BYTE* pbData;
without allocating memory to it,I released it as follows :

if(pbData) { delete[] pbData; pbData = NULL; }

it causes the failure in execution.
So if we are allocating the memory for the pointer, just set it as NULL during initialization.

No comments: