diff --git a/README.md b/README.md index 7ef202fe..dc619933 100644 --- a/README.md +++ b/README.md @@ -35,8 +35,9 @@ Wine. All those differences are also documented on the Included bugfixes and improvements ================================== -**Bugfixes and features included in the next upcoming release [1]:** +**Bugfixes and features included in the next upcoming release [2]:** +* Programs using PortAudio library require ksuser.dll ([Wine Bug #29817](http://bugs.winehq.org/show_bug.cgi?id=29817)) * Wine ignores IDF_CHECKFIRST flag in SetupPromptForDisk ([Wine Bug #20465](http://bugs.winehq.org/show_bug.cgi?id=20465)) diff --git a/patches/Makefile b/patches/Makefile index 28aac842..a5a16945 100644 --- a/patches/Makefile +++ b/patches/Makefile @@ -38,6 +38,7 @@ PATCHLIST := \ kernel32-GetVolumePathName.ok \ kernel32-Named_Pipe.ok \ kernel32-SystemFileCacheSize.ok \ + ksuser-stub.ok \ libs-Unicode_Collation.ok \ ntdll-DOS_Attributes.ok \ ntdll-Dynamic_DST.ok \ @@ -518,6 +519,24 @@ kernel32-SystemFileCacheSize.ok: echo '+ { "kernel32-SystemFileCacheSize", "Austin English", "Add stub for [Get|Set]SystemFileCacheSize." },'; \ ) > kernel32-SystemFileCacheSize.ok +# Patchset ksuser-stub +# | +# | Included patches: +# | * Add ksuser.dll stub. [by Stefan Leichter] +# | +# | This patchset fixes the following Wine bugs: +# | * [#29817] Programs using PortAudio library require ksuser.dll +# | +# | Modified files: +# | * configure.ac, dlls/ksuser/Makefile.in, dlls/ksuser/ksuser.spec, dlls/ksuser/main.c +# | +.INTERMEDIATE: ksuser-stub.ok +ksuser-stub.ok: + $(call APPLY_FILE,ksuser-stub/0001-ksuser-new-stub-dll.patch) + @( \ + echo '+ { "ksuser-stub", "Stefan Leichter", "Add ksuser.dll stub." },'; \ + ) > ksuser-stub.ok + # Patchset libs-Unicode_Collation # | # | Included patches: diff --git a/patches/ksuser-stub/0001-ksuser-new-stub-dll.patch b/patches/ksuser-stub/0001-ksuser-new-stub-dll.patch new file mode 100644 index 00000000..591700c5 --- /dev/null +++ b/patches/ksuser-stub/0001-ksuser-new-stub-dll.patch @@ -0,0 +1,91 @@ +From f350dd8726fc5612571c674470e0686171b48a62 Mon Sep 17 00:00:00 2001 +From: Stefan Leichter +Date: Sat, 4 Oct 2014 11:38:57 +0200 +Subject: ksuser: new stub dll + +--- + configure.ac | 1 + + dlls/ksuser/Makefile.in | 4 ++++ + dlls/ksuser/ksuser.spec | 4 ++++ + dlls/ksuser/main.c | 35 +++++++++++++++++++++++++++++++++++ + 4 files changed, 44 insertions(+) + create mode 100644 dlls/ksuser/Makefile.in + create mode 100644 dlls/ksuser/ksuser.spec + create mode 100644 dlls/ksuser/main.c + +diff --git a/configure.ac b/configure.ac +index f1f721d..6a3dc46 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2943,6 +2943,7 @@ WINE_CONFIG_DLL(kernel32,,[clean,implib,mc]) + WINE_CONFIG_TEST(dlls/kernel32/tests) + WINE_CONFIG_DLL(keyboard.drv16,enable_win16) + WINE_CONFIG_DLL(krnl386.exe16,enable_win16,[implib],[kernel]) ++WINE_CONFIG_DLL(ksuser) + WINE_CONFIG_DLL(ktmw32) + WINE_CONFIG_DLL(loadperf,,[implib]) + WINE_CONFIG_DLL(localspl,,[po]) +diff --git a/dlls/ksuser/Makefile.in b/dlls/ksuser/Makefile.in +new file mode 100644 +index 0000000..1945a19 +--- /dev/null ++++ b/dlls/ksuser/Makefile.in +@@ -0,0 +1,4 @@ ++MODULE = ksuser.dll ++ ++C_SRCS = \ ++ main.c +diff --git a/dlls/ksuser/ksuser.spec b/dlls/ksuser/ksuser.spec +new file mode 100644 +index 0000000..51b84d2 +--- /dev/null ++++ b/dlls/ksuser/ksuser.spec +@@ -0,0 +1,4 @@ ++@ stub KsCreateAllocator ++@ stub KsCreateClock ++@ stub KsCreatePin ++@ stub KsCreateTopologyNode +diff --git a/dlls/ksuser/main.c b/dlls/ksuser/main.c +new file mode 100644 +index 0000000..c72c96e +--- /dev/null ++++ b/dlls/ksuser/main.c +@@ -0,0 +1,35 @@ ++/* ++ * Copyright 2014 Stefan Leichter ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA ++ */ ++ ++#include "config.h" ++#include ++#include "windef.h" ++#include "winbase.h" ++ ++BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved ) ++{ ++ switch (reason) ++ { ++ case DLL_WINE_PREATTACH: ++ return FALSE; /* prefer native version */ ++ case DLL_PROCESS_ATTACH: ++ DisableThreadLibraryCalls( hinst ); ++ break; ++ } ++ return TRUE; ++} +-- +1.9.1 + diff --git a/patches/ksuser-stub/definition b/patches/ksuser-stub/definition new file mode 100644 index 00000000..1c6dc256 --- /dev/null +++ b/patches/ksuser-stub/definition @@ -0,0 +1,4 @@ +Author: Stefan Leichter +Subject: Add ksuser.dll stub. +Revision: 1 +Fixes: [29817] Programs using PortAudio library require ksuser.dll