Huw Davies : wineoss: Pass a client ptr to the callback instead of a stream.

Alexandre Julliard julliard at winehq.org
Wed May 4 16:14:44 CDT 2022


Module: wine
Branch: master
Commit: 153f5de67e583eb422f52142c1c0a9a54b6c87ac
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=153f5de67e583eb422f52142c1c0a9a54b6c87ac

Author: Huw Davies <huw at codeweavers.com>
Date:   Wed May  4 07:54:22 2022 +0100

wineoss: Pass a client ptr to the callback instead of a stream.

This is to allow stream handles to be larger than sizeof(void *).

Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wineoss.drv/mmdevdrv.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/wineoss.drv/mmdevdrv.c b/dlls/wineoss.drv/mmdevdrv.c
index c282ff14f01..93bf775ebc8 100644
--- a/dlls/wineoss.drv/mmdevdrv.c
+++ b/dlls/wineoss.drv/mmdevdrv.c
@@ -252,10 +252,10 @@ static HRESULT stream_release(struct oss_stream *stream, HANDLE timer_thread)
 
 static DWORD WINAPI timer_thread(void *user)
 {
-    struct oss_stream *stream = user;
     struct timer_loop_params params;
+    struct ACImpl *This = user;
 
-    params.stream = stream;
+    params.stream = This->stream;
     OSS_CALL(timer_loop, &params);
 
     return 0;
@@ -913,7 +913,7 @@ static HRESULT WINAPI AudioClient_Start(IAudioClient3 *iface)
     OSS_CALL(start, &params);
 
     if(SUCCEEDED(params.result) && !This->timer_thread){
-        This->timer_thread = CreateThread(NULL, 0, timer_thread, This->stream, 0, NULL);
+        This->timer_thread = CreateThread(NULL, 0, timer_thread, This, 0, NULL);
         SetThreadPriority(This->timer_thread, THREAD_PRIORITY_TIME_CRITICAL);
     }
 




More information about the wine-cvs mailing list