diff --git a/dlls/dmime/segment.c b/dlls/dmime/segment.c index bc52931f667..af7729f34b9 100644 --- a/dlls/dmime/segment.c +++ b/dlls/dmime/segment.c @@ -530,18 +530,18 @@ static HRESULT WINAPI segment_Compose(IDirectMusicSegment8 *iface, MUSIC_TIME mt return S_OK; } -static HRESULT WINAPI segment_Download(IDirectMusicSegment8 *iface, IUnknown *pAudioPath) +static HRESULT WINAPI segment_Download(IDirectMusicSegment8 *iface, IUnknown *audio_path) { struct segment *This = impl_from_IDirectMusicSegment8(iface); - FIXME("(%p, %p): stub\n", This, pAudioPath); - return S_OK; + TRACE("(%p, %p)\n", This, audio_path); + return IDirectMusicSegment8_SetParam(iface, &GUID_DownloadToAudioPath, -1, DMUS_SEG_ALLTRACKS, 0, audio_path); } -static HRESULT WINAPI segment_Unload(IDirectMusicSegment8 *iface, IUnknown *pAudioPath) +static HRESULT WINAPI segment_Unload(IDirectMusicSegment8 *iface, IUnknown *audio_path) { struct segment *This = impl_from_IDirectMusicSegment8(iface); - FIXME("(%p, %p): stub\n", This, pAudioPath); - return S_OK; + TRACE("(%p, %p)\n", This, audio_path); + return IDirectMusicSegment8_SetParam(iface, &GUID_UnloadFromAudioPath, -1, DMUS_SEG_ALLTRACKS, 0, audio_path); } static const IDirectMusicSegment8Vtbl segment_vtbl = diff --git a/dlls/dmime/tests/dmime.c b/dlls/dmime/tests/dmime.c index cfd58b8b229..ea5a972dc80 100644 --- a/dlls/dmime/tests/dmime.c +++ b/dlls/dmime/tests/dmime.c @@ -3943,7 +3943,7 @@ static void test_segment_state(void) check_track_state(track, downloaded, FALSE); hr = IDirectMusicSegment8_Download((IDirectMusicSegment8 *)segment, (IUnknown *)performance); ok(hr == S_OK, "got %#lx\n", hr); - todo_wine check_track_state(track, downloaded, TRUE); + check_track_state(track, downloaded, TRUE); hr = IDirectMusicSegment8_Unload((IDirectMusicSegment8 *)segment, (IUnknown *)performance); ok(hr == S_OK, "got %#lx\n", hr); check_track_state(track, downloaded, FALSE);