Module: wine
Branch: master
Commit: 92f7c86f68536a854c5d07536bf99df063d243bc
URL: https://source.winehq.org/git/wine.git/?a=commit;h=92f7c86f68536a854c5d0753…
Author: Huw Davies <huw(a)codeweavers.com>
Date: Tue Nov 30 07:56:30 2021 +0000
winecoreaudio: Move the midi input event processing to the unixlib.
Notifications of incoming data are now directly added to a notify
ring-buffer by macOS's midi read callback. The ring-buffer is
implemented with an unused sentinel directly before the read ptr to
distinguish between the full vs empty state. Notifications are
processed by the client's notify thread via the midi_notify_wait
syscall.
Note that the read callback thread is not a Win32 thread, so the
Win32 api cannot be used in anything that it calls.
Signed-off-by: Huw Davies <huw(a)codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/winecoreaudio.drv/coreaudio.c | 2 -
dlls/winecoreaudio.drv/coremidi.c | 163 ++++++++++++++++++++++++-----
dlls/winecoreaudio.drv/coremidi.h | 86 ----------------
dlls/winecoreaudio.drv/midi.c | 204 +------------------------------------
dlls/winecoreaudio.drv/unixlib.h | 6 +-
5 files changed, 140 insertions(+), 321 deletions(-)
Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=92f7c86f68536a854c5d…