Module: wine Branch: master Commit: 5b27cdf93b2f4a21427dc5af57176098cb79b586 URL: http://source.winehq.org/git/wine.git/?a=commit;h=5b27cdf93b2f4a21427dc5af57...
Author: Austin Lund austin.lund@gmail.com Date: Sat Aug 7 15:01:14 2010 +1000
dmime: Ensure IDirectMusicPort is initialised when calling IDirectMusicPerformance::PChannelInfo.
---
dlls/dmime/performance.c | 9 +++++++++ dlls/dmime/tests/performance.c | 2 +- 2 files changed, 10 insertions(+), 1 deletions(-)
diff --git a/dlls/dmime/performance.c b/dlls/dmime/performance.c index 850d834..91df283 100644 --- a/dlls/dmime/performance.c +++ b/dlls/dmime/performance.c @@ -588,7 +588,16 @@ static HRESULT WINAPI IDirectMusicPerformance8Impl_AssignPChannel (LPDIRECTMUSIC
static HRESULT WINAPI IDirectMusicPerformance8Impl_PChannelInfo (LPDIRECTMUSICPERFORMANCE8 iface, DWORD dwPChannel, IDirectMusicPort** ppPort, DWORD* pdwGroup, DWORD* pdwMChannel) { IDirectMusicPerformance8Impl *This = (IDirectMusicPerformance8Impl *)iface; + DMUS_PORTPARAMS8 dmusportparams; + GUID def; + FIXME("(%p, %d, %p, %p, %p): stub\n", This, dwPChannel, ppPort, pdwGroup, pdwMChannel); + + dmusportparams.dwSize = sizeof(DMUS_PORTPARAMS8); + dmusportparams.dwValidParams = 0; + IDirectMusic8_GetDefaultPort(This->pDirectMusic, &def); + IDirectMusic8_CreatePort(This->pDirectMusic, &def, &dmusportparams, ppPort, NULL); + return S_OK; }
diff --git a/dlls/dmime/tests/performance.c b/dlls/dmime/tests/performance.c index a681b6a..f184314 100644 --- a/dlls/dmime/tests/performance.c +++ b/dlls/dmime/tests/performance.c @@ -45,7 +45,7 @@ static void test_PChannelInfo(void) pDirectMusicPort = NULL; hr = IDirectMusicPerformance8_PChannelInfo(idmusicperformance, 0, &pDirectMusicPort, NULL, NULL); ok(hr == S_OK, "Failed to call PChannelInfo (%x)\n", hr); - todo_wine ok(pDirectMusicPort != NULL, "IDirectMusicPort not set\n"); + ok(pDirectMusicPort != NULL, "IDirectMusicPort not set\n"); if (hr == S_OK && pDirectMusicPort != NULL) IDirectMusicPort_Release(pDirectMusicPort); }