quartz: COM cleanup for Parser_OutputPin
Michael Stefaniuc
mstefani at redhat.com
Fri May 18 10:27:08 CDT 2012
Hello Aric,
On 05/18/2012 04:27 PM, Aric Stewart wrote:
> diff --git a/dlls/quartz/avisplit.c b/dlls/quartz/avisplit.c
> index 5027e90..bac1b24 100644
> --- a/dlls/quartz/avisplit.c
> +++ b/dlls/quartz/avisplit.c
> @@ -288,7 +288,7 @@ static HRESULT AVISplitter_next_request(AVISplitterImpl *This, DWORD streamnumbe
>
> static HRESULT AVISplitter_Receive(AVISplitterImpl *This, IMediaSample *sample, DWORD streamnumber)
> {
> - Parser_OutputPin *pin = (Parser_OutputPin *)This->Parser.ppPins[1+streamnumber];
> + Parser_OutputPin *pin = impl_Parser_OutputPin_from_IPin(This->Parser.ppPins[1+streamnumber]);
this isn't right. impl_from_... should be used only from methods of the
respective implementation. You can either:
- Make This->Parser.ppPins an array of Parser_OutputPin instead of IPin
- Or if you need to support application provided IPin then you'll need
an unsafe_impl_from_...
> HRESULT hr;
> LONGLONG start, stop, rtstart, rtstop;
> StreamData *stream = &This->streams[streamnumber];
bye
michael
More information about the wine-devel
mailing list