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