Module: wine Branch: master Commit: 16f9bfd23f3ca245a73722e9ab0028bf7d1b311d URL: https://gitlab.winehq.org/wine/wine/-/commit/16f9bfd23f3ca245a73722e9ab0028b...
Author: Rémi Bernon rbernon@codeweavers.com Date: Mon Sep 25 11:30:42 2023 +0200
dmime: Play direct sound buffer from DMUS_PMSGT_WAVE message.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=9027 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34751 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45135 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48220
---
dlls/dmime/performance.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/dmime/performance.c b/dlls/dmime/performance.c index 84b4b4b8575..2018fa013de 100644 --- a/dlls/dmime/performance.c +++ b/dlls/dmime/performance.c @@ -1631,6 +1631,7 @@ static HRESULT WINAPI performance_tool_ProcessPMsg(IDirectMusicTool *iface, { struct performance *This = impl_from_IDirectMusicTool(iface); struct message *message = message_from_DMUS_PMSG(msg); + HRESULT hr;
FIXME("(%p, %p, %p): semi-stub\n", This, performance, msg);
@@ -1641,7 +1642,6 @@ static HRESULT WINAPI performance_tool_ProcessPMsg(IDirectMusicTool *iface, DMUS_NOTIFICATION_PMSG *notif = (DMUS_NOTIFICATION_PMSG *)msg; struct message *previous; BOOL enabled = FALSE; - HRESULT hr;
if (IsEqualGUID(¬if->guidNotificationType, &GUID_NOTIFICATION_SEGMENT) && notif->dwNotificationOption == DMUS_NOTIFICATION_SEGEND) @@ -1671,6 +1671,11 @@ static HRESULT WINAPI performance_tool_ProcessPMsg(IDirectMusicTool *iface, return S_OK; }
+ case DMUS_PMSGT_WAVE: + if (FAILED(hr = IDirectSoundBuffer_Play((IDirectSoundBuffer *)msg->punkUser, 0, 0, 0))) + WARN("Failed to play wave buffer, hr %#lx\n", hr); + break; + default: FIXME("Unhandled message type %#lx\n", msg->dwType); break;