You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Fix compiler warnings in multiple patches.
This commit is contained in:
@@ -1,15 +1,15 @@
|
||||
From eda32948987d81c0df777fbe997b2ce8eaa4cbd1 Mon Sep 17 00:00:00 2001
|
||||
From 5467b7a82f16dfb7cbd6de4badcd107e7ec5f292 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
|
||||
Date: Fri, 26 Feb 2016 03:54:28 +0100
|
||||
Subject: mmsystem.dll16: Refcount midihdr to work around buggy application
|
||||
which unprepares buffer during a callback.
|
||||
|
||||
---
|
||||
dlls/mmsystem.dll16/message16.c | 121 ++++++++++++++++++++++++----------------
|
||||
1 file changed, 73 insertions(+), 48 deletions(-)
|
||||
dlls/mmsystem.dll16/message16.c | 123 ++++++++++++++++++++++++----------------
|
||||
1 file changed, 74 insertions(+), 49 deletions(-)
|
||||
|
||||
diff --git a/dlls/mmsystem.dll16/message16.c b/dlls/mmsystem.dll16/message16.c
|
||||
index 012d3dc..26e47b2 100644
|
||||
index 012d3dc..2c01eb4 100644
|
||||
--- a/dlls/mmsystem.dll16/message16.c
|
||||
+++ b/dlls/mmsystem.dll16/message16.c
|
||||
@@ -33,6 +33,13 @@
|
||||
@@ -46,7 +46,7 @@ index 012d3dc..26e47b2 100644
|
||||
}
|
||||
break;
|
||||
default:
|
||||
@@ -175,41 +182,48 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiOut_Map16To32W (UINT wMsg, DWORD_PTR* lpP
|
||||
@@ -175,42 +182,49 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiOut_Map16To32W (UINT wMsg, DWORD_PTR* lpP
|
||||
break;
|
||||
case MODM_PREPARE:
|
||||
{
|
||||
@@ -97,7 +97,16 @@ index 012d3dc..26e47b2 100644
|
||||
- LPMIDIHDR mh32 = (MIDIHDR*)mh16->lpNext;
|
||||
+ LPMIDIHDR16 mh16 = MapSL(*lpParam1);
|
||||
+ struct mihdrWrap *mh32 = (struct mihdrWrap*)mh16->lpNext;
|
||||
+
|
||||
|
||||
- *lpParam1 = (DWORD)mh32;
|
||||
- *lpParam2 = offsetof(MIDIHDR,dwOffset);
|
||||
- /* dwBufferLength can be reduced between prepare & write */
|
||||
- if (wMsg == MODM_LONGDATA && mh32->dwBufferLength < mh16->dwBufferLength) {
|
||||
- ERR("Size of buffer has been increased from %d to %d, keeping initial value\n",
|
||||
- mh32->dwBufferLength, mh16->dwBufferLength);
|
||||
- } else
|
||||
- mh32->dwBufferLength = mh16->dwBufferLength;
|
||||
- ret = MMSYSTEM_MAP_OKMEM;
|
||||
+ mh32->ref++;
|
||||
+
|
||||
+ *lpParam1 = (DWORD)&mh32->hdr;
|
||||
@@ -111,18 +120,11 @@ index 012d3dc..26e47b2 100644
|
||||
+ }
|
||||
+ else
|
||||
+ mh32->hdr.dwBufferLength = mh16->dwBufferLength;
|
||||
|
||||
- *lpParam1 = (DWORD)mh32;
|
||||
- *lpParam2 = offsetof(MIDIHDR,dwOffset);
|
||||
- /* dwBufferLength can be reduced between prepare & write */
|
||||
- if (wMsg == MODM_LONGDATA && mh32->dwBufferLength < mh16->dwBufferLength) {
|
||||
- ERR("Size of buffer has been increased from %d to %d, keeping initial value\n",
|
||||
- mh32->dwBufferLength, mh16->dwBufferLength);
|
||||
- } else
|
||||
- mh32->dwBufferLength = mh16->dwBufferLength;
|
||||
ret = MMSYSTEM_MAP_OKMEM;
|
||||
+
|
||||
+ ret = MMSYSTEM_MAP_OKMEM;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -267,17 +281,28 @@ static MMSYSTEM_MapType MMSYSTDRV_MidiOut_UnMap16To32W(UINT wMsg, DWORD_PTR* lp
|
||||
case MODM_UNPREPARE:
|
||||
case MODM_LONGDATA:
|
||||
@@ -180,5 +182,5 @@ index 012d3dc..26e47b2 100644
|
||||
break;
|
||||
default:
|
||||
--
|
||||
2.7.1
|
||||
2.9.0
|
||||
|
||||
|
Reference in New Issue
Block a user