wineasio: fix ftbfs
This commit is contained in:
parent
688b8da5f4
commit
022f75d23c
2 changed files with 61 additions and 2 deletions
59
srcpkgs/wineasio/patches/wine-unicode_h.patch
Normal file
59
srcpkgs/wineasio/patches/wine-unicode_h.patch
Normal file
|
@ -0,0 +1,59 @@
|
|||
Source: @pullmoll
|
||||
Upstream: no
|
||||
Reason: wine/unicode.h does not exist anymore and also strrchrW()
|
||||
is not available. Replace the code with a simple linear
|
||||
scan over the application_path array to find the rightmost
|
||||
backslash (\) and period (.) for creating the application_name.
|
||||
|
||||
--- wineasio/asio.c 2013-10-28 15:22:00.000000000 +0100
|
||||
+++ wineasio/asio.c 2021-02-07 21:18:46.741180398 +0100
|
||||
@@ -24,6 +24,7 @@
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
+#define _UNICODE
|
||||
#include <stdio.h>
|
||||
#include <errno.h>
|
||||
#include <unistd.h>
|
||||
@@ -34,7 +35,6 @@
|
||||
#include "objbase.h"
|
||||
#include "mmsystem.h"
|
||||
#include "winreg.h"
|
||||
-#include "wine/unicode.h"
|
||||
|
||||
#include <jack/jack.h>
|
||||
#include <jack/thread.h>
|
||||
@@ -1449,7 +1449,7 @@
|
||||
{
|
||||
HKEY hkey;
|
||||
LONG result, value;
|
||||
- DWORD type, size;
|
||||
+ DWORD type, size, pos, backslash, period;
|
||||
WCHAR application_path [MAX_PATH];
|
||||
WCHAR *application_name;
|
||||
char environment_variable[MAX_ENVIRONMENT_SIZE];
|
||||
@@ -1601,10 +1601,20 @@
|
||||
|
||||
/* get client name by stripping path and extension */
|
||||
GetModuleFileNameW(0, application_path, MAX_PATH);
|
||||
- application_name = strrchrW(application_path, L'.');
|
||||
- *application_name = 0;
|
||||
- application_name = strrchrW(application_path, L'\\');
|
||||
- application_name++;
|
||||
+ backslash = 0;
|
||||
+ period = 0;
|
||||
+ for (pos = 0; pos < MAX_PATH; pos++) {
|
||||
+ if (L'\\' == application_path[pos])
|
||||
+ backslash = pos;
|
||||
+ if (L'.' == application_path[pos])
|
||||
+ period = pos;
|
||||
+ if (0 == application_path[pos])
|
||||
+ break;
|
||||
+ }
|
||||
+ if (period > 0) {
|
||||
+ application_path[period] = 0;
|
||||
+ }
|
||||
+ application_name = backslash ? &application_path[backslash + 1] : application_path;
|
||||
WideCharToMultiByte(CP_ACP, WC_SEPCHARS, application_name, -1, This->jack_client_name, ASIO_MAX_NAME_LENGTH, NULL, NULL);
|
||||
|
||||
RegCloseKey(hkey);
|
|
@ -1,14 +1,14 @@
|
|||
# Template file for 'wineasio'
|
||||
pkgname=wineasio
|
||||
version=0.9.2
|
||||
revision=6
|
||||
revision=7
|
||||
archs="i686"
|
||||
repository="nonfree"
|
||||
build_style=gnu-makefile
|
||||
create_wrksrc=yes
|
||||
build_wrksrc=${pkgname}
|
||||
homepage="https://sourceforge.net/projects/wineasio"
|
||||
hostmakedepends="unzip"
|
||||
hostmakedepends="unzip wine-tools"
|
||||
makedepends="wine wine-devel jack-devel"
|
||||
depends="jack"
|
||||
short_desc="JACK driver for WINE to provide Windows Apps with ASIO support"
|
||||
|
|
Loading…
Reference in a new issue