Hans Leidekker : msi: Set concurrency model to multi-threaded for custom action threads.
Module: wine Branch: master Commit: ba50d15060b612420b8849ac337404b3c4331f71 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ba50d15060b612420b8849ac33... Author: Hans Leidekker <hans(a)codeweavers.com> Date: Fri Mar 13 14:48:00 2009 +0100 msi: Set concurrency model to multi-threaded for custom action threads. A custom action in the office 2007 sp1 installer fails right after calling CoInitializeEx(NULL, COINIT_MULTITHREADED). This is because our code calls CoInitialize(NULL) first, which sets a different concurrency model, and a subsequent call with a different model will return RPC_E_CHANGED_MODE. Ergo, we should set the model to multi-threaded too. --- dlls/msi/custom.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/dlls/msi/custom.c b/dlls/msi/custom.c index 66a7ce6..ffac63f 100644 --- a/dlls/msi/custom.c +++ b/dlls/msi/custom.c @@ -695,7 +695,7 @@ static DWORD ACTION_CallDllFunction( const GUID *guid ) TRACE("calling %s\n", debugstr_w( function ) ); handle_msi_break( function ); - CoInitialize(NULL); + CoInitializeEx(NULL, COINIT_MULTITHREADED); __TRY {
participants (1)
-
Alexandre Julliard