Module: wine
Branch: master
Commit: 457431ab5bc1dd10c4957f145de85c4ba6d0ef72
URL: https://source.winehq.org/git/wine.git/?a=commit;h=457431ab5bc1dd10c4957f14…
Author: Zebediah Figura <z.figura12(a)gmail.com>
Date: Tue Jul 10 12:08:47 2018 +0200
msi: Reuse the custom action server process where possible.
We use a named pipe to communicate between the client (i.e. the process that
called MsiInstallProduct() and the custom action server. The naïve approach
has the client send custom action GUIDs to the server and the server send
back the results of executing the action, but this fails in the case of
nested custom actions, so instead we send back handles of threads for the
client to wait on.
Signed-off-by: Zebediah Figura <z.figura12(a)gmail.com>
Signed-off-by: Hans Leidekker <hans(a)codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard(a)winehq.org>
---
dlls/msi/custom.c | 133 +++++++++++++++++++++++++++++++++++----------
dlls/msi/msipriv.h | 6 ++
dlls/msi/package.c | 4 ++
dlls/msi/tests/custom.c | 19 +++++++
dlls/msi/tests/custom.spec | 3 +
dlls/msi/tests/install.c | 14 ++++-
programs/msiexec/msiexec.c | 59 ++++++++++++++++----
7 files changed, 198 insertions(+), 40 deletions(-)
Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=457431ab5bc1dd10c495…