Module: wine Branch: master Commit: 14e228c699e6a06792b97f27af2c9d4eda1057ac URL: http://source.winehq.org/git/wine.git/?a=commit;h=14e228c699e6a06792b97f27af... Author: Christian Costa <titan.costa(a)gmail.com> Date: Mon Mar 12 19:54:56 2012 +0100 amstream: Add source filter to the filtergraph before loading the file. --- dlls/amstream/amstream.c | 13 ++++++------- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/dlls/amstream/amstream.c b/dlls/amstream/amstream.c index 82dcd24..a731d5e 100644 --- a/dlls/amstream/amstream.c +++ b/dlls/amstream/amstream.c @@ -316,6 +316,10 @@ static HRESULT WINAPI IAMMultiMediaStreamImpl_OpenFile(IAMMultiMediaStream* ifac if(ret != S_OK) return ret; + ret = IGraphBuilder_AddSourceFilter(This->pFilterGraph, pszFileName, pszFileName, &BaseFilter); + if (FAILED(ret)) + goto end; + ret = IFileSourceFilter_Load(SourceFilter, pszFileName, NULL); if(ret != S_OK) { @@ -337,23 +341,18 @@ static HRESULT WINAPI IAMMultiMediaStreamImpl_OpenFile(IAMMultiMediaStream* ifac } ret = IEnumPins_Next(EnumPins, 1, &ipin, NULL); - if(ret == S_OK) + if (ret == S_OK) { ret = IPin_QueryDirection(ipin, &pin_direction); IEnumPins_Release(EnumPins); - if(ret == S_OK && pin_direction == PINDIR_OUTPUT) + if (ret == S_OK && pin_direction == PINDIR_OUTPUT) This->ipin = ipin; - else - goto end; } else { IEnumPins_Release(EnumPins); - goto end; } - ret = IGraphBuilder_AddSourceFilter(This->pFilterGraph, pszFileName, pszFileName, &BaseFilter); - end: IBaseFilter_Release(BaseFilter); IFileSourceFilter_Release(SourceFilter);