From: Amine Khaldi Date: Sat, 5 Oct 2013 20:55:09 +0000 (+0000) Subject: [STRMBASE] X-Git-Tag: ReactOS-0.3.16~1035 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=5a71791fd5be8a8b9c0de43ce6d78af53f2443d2 [STRMBASE] * Sync with Wine 1.7.1. CORE-7469 svn path=/trunk/; revision=60548 --- diff --git a/reactos/lib/3rdparty/strmbase/dllfunc.c b/reactos/lib/3rdparty/strmbase/dllfunc.c index 23e71db4743..cd351a9a527 100644 --- a/reactos/lib/3rdparty/strmbase/dllfunc.c +++ b/reactos/lib/3rdparty/strmbase/dllfunc.c @@ -24,6 +24,8 @@ #include #define COBJMACROS +#define NONAMELESSSTRUCT +#define NONAMELESSUNION #include "windef.h" #include "winbase.h" @@ -211,8 +213,8 @@ HRESULT WINAPI AMovieSetupRegisterFilter2(const AMOVIESETUP_FILTER *pFilter, IFi REGFILTER2 rf2; rf2.dwVersion = 1; rf2.dwMerit = pFilter->merit; - rf2.cPins = pFilter->pins; - rf2.rgPins = pFilter->pPin; + rf2.u.s1.cPins = pFilter->pins; + rf2.u.s1.rgPins = pFilter->pPin; return IFilterMapper2_RegisterFilter(pIFM2, pFilter->clsid, pFilter->name, NULL, &CLSID_LegacyAmFilterCategory, NULL, &rf2); } diff --git a/reactos/lib/3rdparty/strmbase/enumpins.c b/reactos/lib/3rdparty/strmbase/enumpins.c index eab4d5b0e8a..6993bae601d 100644 --- a/reactos/lib/3rdparty/strmbase/enumpins.c +++ b/reactos/lib/3rdparty/strmbase/enumpins.c @@ -76,7 +76,7 @@ HRESULT WINAPI EnumPins_Construct(BaseFilter *base, BaseFilter_GetPin receive_p static HRESULT WINAPI IEnumPinsImpl_QueryInterface(IEnumPins * iface, REFIID riid, LPVOID * ppv) { - TRACE("(%s, %p)\n", debugstr_guid(riid), ppv); + TRACE("(%p)->(%s, %p)\n", iface, debugstr_guid(riid), ppv); *ppv = NULL; @@ -99,28 +99,27 @@ static HRESULT WINAPI IEnumPinsImpl_QueryInterface(IEnumPins * iface, REFIID rii static ULONG WINAPI IEnumPinsImpl_AddRef(IEnumPins * iface) { IEnumPinsImpl *This = impl_from_IEnumPins(iface); - ULONG refCount = InterlockedIncrement(&This->refCount); + ULONG ref = InterlockedIncrement(&This->refCount); - TRACE("(%p)->() AddRef from %d\n", This, refCount - 1); + TRACE("(%p)->(): new ref = %u\n", iface, ref); - return refCount; + return ref; } static ULONG WINAPI IEnumPinsImpl_Release(IEnumPins * iface) { IEnumPinsImpl *This = impl_from_IEnumPins(iface); - ULONG refCount = InterlockedDecrement(&This->refCount); + ULONG ref = InterlockedDecrement(&This->refCount); - TRACE("(%p)->() Release from %d\n", This, refCount + 1); + TRACE("(%p)->(): new ref = %u\n", iface, ref); - if (!refCount) + if (!ref) { IBaseFilter_Release(&This->base->IBaseFilter_iface); CoTaskMemFree(This); - return 0; } - else - return refCount; + + return ref; } static HRESULT WINAPI IEnumPinsImpl_Next(IEnumPins * iface, ULONG cPins, IPin ** ppPins, ULONG * pcFetched) @@ -129,7 +128,7 @@ static HRESULT WINAPI IEnumPinsImpl_Next(IEnumPins * iface, ULONG cPins, IPin ** HRESULT hr = S_OK; ULONG i = 0; - TRACE("(%u, %p, %p)\n", cPins, ppPins, pcFetched); + TRACE("(%p)->(%u, %p, %p)\n", iface, cPins, ppPins, pcFetched); if (!ppPins) return E_POINTER; @@ -168,7 +167,7 @@ static HRESULT WINAPI IEnumPinsImpl_Skip(IEnumPins * iface, ULONG cPins) { IEnumPinsImpl *This = impl_from_IEnumPins(iface); - TRACE("(%u)\n", cPins); + TRACE("(%p)->(%u)\n", iface, cPins); if (This->Version != This->receive_version(This->base)) return VFW_E_ENUM_OUT_OF_SYNC; @@ -184,7 +183,8 @@ static HRESULT WINAPI IEnumPinsImpl_Reset(IEnumPins * iface) { IEnumPinsImpl *This = impl_from_IEnumPins(iface); - TRACE("IEnumPinsImpl::Reset()\n"); + TRACE("(%p)->()\n", iface); + This->Version = This->receive_version(This->base); This->uIndex = 0; @@ -196,7 +196,7 @@ static HRESULT WINAPI IEnumPinsImpl_Clone(IEnumPins * iface, IEnumPins ** ppEnum HRESULT hr; IEnumPinsImpl *This = impl_from_IEnumPins(iface); - TRACE("(%p)\n", ppEnum); + TRACE("(%p)->(%p)\n", iface, ppEnum); hr = EnumPins_Construct(This->base, This->receive_pin, This->receive_pincount, This->receive_version, ppEnum); if (FAILED(hr)) diff --git a/reactos/lib/3rdparty/strmbase/transform.c b/reactos/lib/3rdparty/strmbase/transform.c index 0e014b07756..df72d999b4f 100644 --- a/reactos/lib/3rdparty/strmbase/transform.c +++ b/reactos/lib/3rdparty/strmbase/transform.c @@ -343,8 +343,8 @@ ULONG WINAPI TransformFilterImpl_Release(IBaseFilter * iface) DeleteCriticalSection(&This->csReceive); FreeMediaType(&This->pmt); QualityControlImpl_Destroy(This->qcimpl); - CoTaskMemFree(This); IUnknown_Release(This->seekthru_unk); + CoTaskMemFree(This); return 0; } diff --git a/reactos/media/doc/README.WINE b/reactos/media/doc/README.WINE index 9a71c4653c1..8ca5fae1f3a 100644 --- a/reactos/media/doc/README.WINE +++ b/reactos/media/doc/README.WINE @@ -242,7 +242,7 @@ In addition the following libs, dlls and source files are mostly based on code p from Winehq CVS. If you are looking to update something in these files check Wine current souces first as it may already be fixed. -reactos/lib/3rdparty/strmbase # Synced to Wine-1.5.26 +reactos/lib/3rdparty/strmbase # Synced to Wine-1.7.11 reactos/lib/sdk/uuid # Synced to Wine-1.1.42 advapi32 -