James Hawkins : msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can be used internally .

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jul 20 06:20:45 CDT 2006


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

Author: James Hawkins <truiken at gmail.com>
Date:   Wed Jul 19 11:17:28 2006 -0700

msi: Forward MsiSetInstallLevel to an internal MSI_SetInstallLevel that can be used internally.

---

 dlls/msi/install.c |   31 +++++++++++++++++++++----------
 dlls/msi/msipriv.h |    3 +++
 2 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/dlls/msi/install.c b/dlls/msi/install.c
index 38888ef..f5e2c42 100644
--- a/dlls/msi/install.c
+++ b/dlls/msi/install.c
@@ -762,27 +762,19 @@ LANGID WINAPI MsiGetLanguage(MSIHANDLE h
     return langid;
 }
 
-/***********************************************************************
- * MsiGetLanguage (MSI.@)
- */
-UINT WINAPI MsiSetInstallLevel(MSIHANDLE hInstall, int iInstallLevel)
+UINT MSI_SetInstallLevel( MSIPACKAGE *package, int iInstallLevel )
 {
     static const WCHAR szInstallLevel[] = {
         'I','N','S','T','A','L','L','L','E','V','E','L',0 };
     static const WCHAR fmt[] = { '%','d',0 };
-    MSIPACKAGE* package;
     WCHAR level[6];
     UINT r;
 
-    TRACE("%ld %i\n", hInstall, iInstallLevel);
+    TRACE("%p %i\n", package, iInstallLevel);
 
     if (iInstallLevel<1 || iInstallLevel>32767)
         return ERROR_INVALID_PARAMETER;
 
-    package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
-    if ( !package )
-        return ERROR_INVALID_HANDLE;
-
     sprintfW( level, fmt, iInstallLevel );
     r = MSI_SetPropertyW( package, szInstallLevel, level );
     if ( r == ERROR_SUCCESS )
@@ -790,6 +782,25 @@ UINT WINAPI MsiSetInstallLevel(MSIHANDLE
         r = MSI_SetFeatureStates( package );
     }
 
+    return r;
+}
+
+/***********************************************************************
+ * MsiSetInstallLevel (MSI.@)
+ */
+UINT WINAPI MsiSetInstallLevel(MSIHANDLE hInstall, int iInstallLevel)
+{
+    MSIPACKAGE* package;
+    UINT r;
+
+    TRACE("%ld %i\n", hInstall, iInstallLevel);
+
+    package = msihandle2msiinfo( hInstall, MSIHANDLETYPE_PACKAGE );
+    if ( !package )
+        return ERROR_INVALID_HANDLE;
+
+    r = MSI_SetInstallLevel( package, iInstallLevel );
+
     msiobj_release( &package->hdr );
 
     return r;
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
index a56b9fe..b2fe5bc 100644
--- a/dlls/msi/msipriv.h
+++ b/dlls/msi/msipriv.h
@@ -381,6 +381,9 @@ extern UINT MSI_ViewExecute( MSIQUERY*, 
 extern UINT MSI_ViewFetch( MSIQUERY*, MSIRECORD ** );
 extern UINT MSI_ViewClose( MSIQUERY* );
 
+/* install internals */
+extern UINT MSI_SetInstallLevel( MSIPACKAGE *package, int iInstallLevel );
+
 /* package internals */
 extern MSIPACKAGE *MSI_CreatePackage( MSIDATABASE * );
 extern UINT MSI_OpenPackageW( LPCWSTR szPackage, MSIPACKAGE ** );




More information about the wine-cvs mailing list