[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    [PATCH v3] x3daudio: fix lib exports
From:       Rafał Mużyło <galtgendo () o2 ! pl>
Date:       2019-09-30 21:34:34
Message-ID: 20190930213434.GA4811 () blackspire3
[Download RAW message or body]

x3daudio: fix lib exports

1. in case of x3daudio1_{0,1,2}, two exported functions are for some
reason decorated (though only on 32bit)
2. tests show these functions should be stdcall, not cdecl; more
exactly, header for 1.1 shows that too (1.7 header shows that changed at
some point)

Signed-off-by: Rafał Mużyło <galtgendo@o2.pl>


["wine-4.16-x3daudio-exports.patch" (text/x-diff)]

--- a/dlls/x3daudio1_0/x3daudio1_0.spec	2019-08-30 22:11:51.000000000 +0200
+++ b/dlls/x3daudio1_0/x3daudio1_0.spec	2019-09-24 13:02:59.151295631 +0200
@@ -1,2 +1,4 @@
-@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr)
-@ cdecl X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win32 _X3DAudioCalculate@20(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win32 _X3DAudioInitialize@12(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win64 X3DAudioCalculate(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win64 X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
--- a/dlls/x3daudio1_1/x3daudio1_1.spec	2019-08-30 22:11:51.000000000 +0200
+++ b/dlls/x3daudio1_1/x3daudio1_1.spec	2019-09-24 13:02:59.151295631 +0200
@@ -1,2 +1,4 @@
-@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr)
-@ cdecl X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win32 _X3DAudioCalculate@20(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win32 _X3DAudioInitialize@12(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win64 X3DAudioCalculate(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win64 X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
--- a/dlls/x3daudio1_2/x3daudio1_2.spec	2019-08-30 22:11:51.000000000 +0200
+++ b/dlls/x3daudio1_2/x3daudio1_2.spec	2019-09-24 13:02:59.151295631 +0200
@@ -1,2 +1,4 @@
-@ cdecl X3DAudioCalculate(ptr ptr ptr long ptr)
-@ cdecl X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win32 _X3DAudioCalculate@20(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win32 _X3DAudioInitialize@12(long float ptr) LEGACY_X3DAudioInitialize
+@ stdcall -arch=win64 X3DAudioCalculate(ptr ptr ptr long ptr) LEGACY_X3DAudioCalculate
+@ stdcall -arch=win64 X3DAudioInitialize(long float ptr) LEGACY_X3DAudioInitialize
--- a/dlls/xaudio2_7/x3daudio.c	2019-08-30 22:11:51.000000000 +0200
+++ b/dlls/xaudio2_7/x3daudio.c	2019-09-24 14:18:33.519066671 +0200
@@ -63,7 +63,11 @@ HRESULT CDECL X3DAudioInitialize(UINT32
 #endif /* XAUDIO2_VER >= 8 */
 
 #ifdef X3DAUDIO1_VER
+#if X3DAUDIO1_VER <= 2
+void WINAPI LEGACY_X3DAudioInitialize(UINT32 chanmask, float speedofsound,
+#else
 void CDECL LEGACY_X3DAudioInitialize(UINT32 chanmask, float speedofsound,
+#endif
         X3DAUDIO_HANDLE handle)
 {
     TRACE("0x%x, %f, %p\n", chanmask, speedofsound, handle);
@@ -72,7 +72,11 @@ void CDECL LEGACY_X3DAudioInitialize(UIN
 #endif /* X3DAUDIO1_VER */
 
 #if XAUDIO2_VER >= 8 || defined X3DAUDIO1_VER
+#if defined(X3DAUDIO1_VER) && X3DAUDIO1_VER <= 2
+void WINAPI LEGACY_X3DAudioCalculate(const X3DAUDIO_HANDLE handle,
+#else
 void CDECL X3DAudioCalculate(const X3DAUDIO_HANDLE handle,
+#endif
         const X3DAUDIO_LISTENER *listener, const X3DAUDIO_EMITTER *emitter,
         UINT32 flags, X3DAUDIO_DSP_SETTINGS *out)
 {


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic