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