diff --git a/README.md b/README.md index 8dd31d2d..e274e54c 100644 --- a/README.md +++ b/README.md @@ -13,9 +13,10 @@ which are not present in regular wine, and always report such issues to us Included bugfixes and improvements ---------------------------------- -**Bugfixes and features included in the next upcoming release [6]:** +**Bugfixes and features included in the next upcoming release [7]:** * Fix ITERATE_MoveFiles when no source- and destname is specified ([Wine Bug #10085](http://bugs.winehq.org/show_bug.cgi?id=10085 "Adobe Bridge CS2 complains that it can't start due to licensing restrictions (affects photoshop)")) +* Gothic 2 demo expects an error when opening a terminating process ([Wine Bug #37087](http://bugs.winehq.org/show_bug.cgi?id=37087 "Gothic 2 english demo fails with 'Conflict: a hook process was found. Please deactivate all Antivirus and Anti-Trojan programs and debuggers.'")) * Other Pipelight-specific enhancements * Support for DwmInvalidateIconicBitmaps ([Wine Bug #32977](http://bugs.winehq.org/show_bug.cgi?id=32977 "Solidworks 2012 needs unimplemented function dwmapi.dll.DwmInvalidateIconicBitmaps (Win7 mode)")) * Support for Dynamic DST (daylight saving time) information in registry diff --git a/patches/Makefile b/patches/Makefile index 341ff487..51f1bff6 100644 --- a/patches/Makefile +++ b/patches/Makefile @@ -37,6 +37,7 @@ PATCHLIST := \ server-CreateProcess_ACLs.ok \ server-Inherited_ACLs.ok \ server-Misc_ACL.ok \ + server-Process.ok \ server-Stored_ACLs.ok \ shell32-Default_Folder_ACLs.ok \ shell32-Icons.ok \ @@ -644,6 +645,24 @@ server-Misc_ACL.ok: echo '+ { "server-Misc_ACL", "Erich E. Hoover", "Add default security descriptor ownership and DACLs for processes." },'; \ ) > server-Misc_ACL.ok +# Patchset server-Process +# | +# | Included patches: +# | * Return error when opening a terminating process. [by Michael Müller] +# | +# | This patchset fixes the following Wine bugs: +# | * [#37087] Gothic 2 demo expects an error when opening a terminating process +# | +# | Modified files: +# | * server/process.c +# | +.INTERMEDIATE: server-Process.ok +server-Process.ok: + $(call APPLY_FILE,server-Process/0001-server-Return-error-when-opening-a-terminating-proce.patch) + @( \ + echo '+ { "server-Process", "Michael Müller", "Return error when opening a terminating process." },'; \ + ) > server-Process.ok + # Patchset server-Stored_ACLs # | # | Included patches: diff --git a/patches/server-Process/0001-server-Return-error-when-opening-a-terminating-proce.patch b/patches/server-Process/0001-server-Return-error-when-opening-a-terminating-proce.patch new file mode 100644 index 00000000..a573cdfe --- /dev/null +++ b/patches/server-Process/0001-server-Return-error-when-opening-a-terminating-proce.patch @@ -0,0 +1,28 @@ +From dd42b1c92e5e72953da216a12e2d244178633089 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Michael=20M=C3=BCller?= +Date: Thu, 14 Aug 2014 03:05:52 +0200 +Subject: server: Return error when opening a terminating process. + +--- + server/process.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/server/process.c b/server/process.c +index 7b9a3b2..7935373 100644 +--- a/server/process.c ++++ b/server/process.c +@@ -1082,7 +1082,10 @@ DECL_HANDLER(open_process) + reply->handle = 0; + if (process) + { +- reply->handle = alloc_handle( current->process, process, req->access, req->attributes ); ++ if (!process->is_terminating) ++ reply->handle = alloc_handle( current->process, process, req->access, req->attributes ); ++ else ++ set_error( STATUS_INVALID_PARAMETER ); + release_object( process ); + } + } +-- +1.9.1 + diff --git a/patches/server-Process/definition b/patches/server-Process/definition new file mode 100644 index 00000000..deb23d35 --- /dev/null +++ b/patches/server-Process/definition @@ -0,0 +1,4 @@ +Author: Michael Müller +Subject: Return error when opening a terminating process. +Revision: 1 +Fixes: [37087] Gothic 2 demo expects an error when opening a terminating process