Skip to content

Commit

Permalink
strmbase: Add a separate id for pins.
Browse files Browse the repository at this point in the history
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
  • Loading branch information
rbernon authored and julliard committed Mar 28, 2022
1 parent f383694 commit aa9aa73
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 3 deletions.
1 change: 1 addition & 0 deletions include/wine/strmbase.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ struct strmbase_pin
struct strmbase_filter *filter;
PIN_DIRECTION dir;
WCHAR name[128];
WCHAR id[128];
IPin *peer;
AM_MEDIA_TYPE mt;

Expand Down
2 changes: 1 addition & 1 deletion libs/strmbase/filter.c
Original file line number Diff line number Diff line change
Expand Up @@ -436,7 +436,7 @@ static HRESULT WINAPI filter_FindPin(IBaseFilter *iface, const WCHAR *id, IPin *

for (i = 0; (pin = filter->ops->filter_get_pin(filter, i)); ++i)
{
if (!lstrcmpW(id, pin->name))
if (!lstrcmpW(id, pin->id))
{
IPin_AddRef(*ret = &pin->IPin_iface);
return S_OK;
Expand Down
6 changes: 4 additions & 2 deletions libs/strmbase/pin.c
Original file line number Diff line number Diff line change
Expand Up @@ -383,10 +383,10 @@ static HRESULT WINAPI pin_QueryId(IPin *iface, WCHAR **id)

TRACE("pin %p %s:%s, id %p.\n", pin, debugstr_w(pin->filter->name), debugstr_w(pin->name), id);

if (!(*id = CoTaskMemAlloc((lstrlenW(pin->name) + 1) * sizeof(WCHAR))))
if (!(*id = CoTaskMemAlloc((lstrlenW(pin->id) + 1) * sizeof(WCHAR))))
return E_OUTOFMEMORY;

lstrcpyW(*id, pin->name);
lstrcpyW(*id, pin->id);

return S_OK;
}
Expand Down Expand Up @@ -770,6 +770,7 @@ void strmbase_source_init(struct strmbase_source *pin, struct strmbase_filter *f
pin->pin.filter = filter;
pin->pin.dir = PINDIR_OUTPUT;
lstrcpyW(pin->pin.name, name);
lstrcpyW(pin->pin.id, name);
pin->pin.ops = &func_table->base;
pin->pFuncsTable = func_table;
}
Expand Down Expand Up @@ -1172,6 +1173,7 @@ void strmbase_sink_init(struct strmbase_sink *pin, struct strmbase_filter *filte
pin->pin.filter = filter;
pin->pin.dir = PINDIR_INPUT;
lstrcpyW(pin->pin.name, name);
lstrcpyW(pin->pin.id, name);
pin->pin.ops = &func_table->base;
pin->pFuncsTable = func_table;
pin->pAllocator = pin->preferred_allocator = allocator;
Expand Down

0 comments on commit aa9aa73

Please sign in to comment.