Hans Leidekker : msi: Open the database read/write in MSI_OpenPackageW.

Alexandre Julliard julliard at winehq.org
Tue Oct 20 10:33:38 CDT 2009


Module: wine
Branch: master
Commit: afcd2c535894c1768e3fc007277f86400b2067aa
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=afcd2c535894c1768e3fc007277f86400b2067aa

Author: Hans Leidekker <hans at codeweavers.com>
Date:   Tue Oct 20 14:10:19 2009 +0200

msi: Open the database read/write in MSI_OpenPackageW.

Fixes transforms that add binary streams.

---

 dlls/msi/package.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/dlls/msi/package.c b/dlls/msi/package.c
index 1ab2afd..13091d9 100644
--- a/dlls/msi/package.c
+++ b/dlls/msi/package.c
@@ -966,7 +966,11 @@ UINT MSI_OpenPackageW(LPCWSTR szPackage, MSIPACKAGE **pPackage)
             return GetLastError();
         }
 
-        r = MSI_OpenDatabaseW( file, MSIDBOPEN_READONLY, &db );
+        /* transforms that add binary streams require that we open the database
+         * read/write, which is safe because we always create a copy that is thrown
+         * away when we're done.
+         */
+        r = MSI_OpenDatabaseW( file, MSIDBOPEN_DIRECT, &db );
         if( r != ERROR_SUCCESS )
         {
             if (file != szPackage)




More information about the wine-cvs mailing list