msi: Make MsiSetInstallLevel() RPC-compatible.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Hans Leidekker <hans@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
5f45959adc
commit
5ab576b8a0
|
@ -1428,22 +1428,11 @@ UINT WINAPI MsiSetInstallLevel(MSIHANDLE hInstall, int iInstallLevel)
|
|||
if (!package)
|
||||
{
|
||||
MSIHANDLE remote;
|
||||
HRESULT hr;
|
||||
|
||||
if (!(remote = msi_get_remote(hInstall)))
|
||||
return ERROR_INVALID_HANDLE;
|
||||
|
||||
hr = remote_SetInstallLevel(remote, iInstallLevel);
|
||||
|
||||
if (FAILED(hr))
|
||||
{
|
||||
if (HRESULT_FACILITY(hr) == FACILITY_WIN32)
|
||||
return HRESULT_CODE(hr);
|
||||
|
||||
return ERROR_FUNCTION_FAILED;
|
||||
}
|
||||
|
||||
return ERROR_SUCCESS;
|
||||
return remote_SetInstallLevel(remote, iInstallLevel);
|
||||
}
|
||||
|
||||
r = MSI_SetInstallLevel( package, iInstallLevel );
|
||||
|
|
|
@ -2550,10 +2550,9 @@ LANGID __cdecl remote_GetLanguage(MSIHANDLE hinst)
|
|||
return MsiGetLanguage(hinst);
|
||||
}
|
||||
|
||||
HRESULT __cdecl remote_SetInstallLevel(MSIHANDLE hinst, int level)
|
||||
UINT __cdecl remote_SetInstallLevel(MSIHANDLE hinst, int level)
|
||||
{
|
||||
UINT r = MsiSetInstallLevel(hinst, level);
|
||||
return HRESULT_FROM_WIN32(r);
|
||||
return MsiSetInstallLevel(hinst, level);
|
||||
}
|
||||
|
||||
HRESULT __cdecl remote_FormatRecord(MSIHANDLE hinst, MSIHANDLE record,
|
||||
|
|
|
@ -652,6 +652,12 @@ static void test_misc(MSIHANDLE hinst)
|
|||
|
||||
lang = MsiGetLanguage(hinst);
|
||||
ok(hinst, lang == 1033, "got %u\n", lang);
|
||||
|
||||
check_prop(hinst, "INSTALLLEVEL", "3");
|
||||
r = MsiSetInstallLevel(hinst, 123);
|
||||
ok(hinst, !r, "got %u\n", r);
|
||||
check_prop(hinst, "INSTALLLEVEL", "123");
|
||||
MsiSetInstallLevel(hinst, 3);
|
||||
}
|
||||
|
||||
static void test_feature_states(MSIHANDLE hinst)
|
||||
|
|
|
@ -86,7 +86,7 @@ interface IWineMsiRemote
|
|||
UINT remote_GetComponentState( [in] MSIHANDLE hinst, [in, string] LPCWSTR component, [out] INSTALLSTATE *installed, [out] INSTALLSTATE *action );
|
||||
UINT remote_SetComponentState( [in] MSIHANDLE hinst, [in, string] LPCWSTR component, [in] INSTALLSTATE state );
|
||||
LANGID remote_GetLanguage( [in] MSIHANDLE hinst );
|
||||
HRESULT remote_SetInstallLevel( [in] MSIHANDLE hinst, [in] int level );
|
||||
UINT remote_SetInstallLevel( [in] MSIHANDLE hinst, [in] int level );
|
||||
HRESULT remote_FormatRecord( [in] MSIHANDLE hinst, [in] MSIHANDLE record, [out] BSTR *value );
|
||||
HRESULT remote_EvaluateCondition( [in] MSIHANDLE hinst, [in] BSTR condition );
|
||||
HRESULT remote_GetFeatureCost( [in] MSIHANDLE hinst, [in] BSTR feature, [in] INT cost_tree, [in] INSTALLSTATE state, [out] INT *cost );
|
||||
|
|
Loading…
Reference in New Issue