[STRMBASE]

* Sync with Wine 1.7.1.
CORE-7469

svn path=/trunk/; revision=60548
This commit is contained in:
Amine Khaldi 2013-10-05 20:55:09 +00:00
parent aaed681d85
commit 5a71791fd5
4 changed files with 20 additions and 18 deletions

View file

@ -24,6 +24,8 @@
#include <assert.h>
#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);
}

View file

@ -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))

View file

@ -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;
}

View file

@ -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 -