From b9a3a7a1f9f77be316106ebe189df14a32d29ac7 Mon Sep 17 00:00:00 2001 From: Mike McCormack Date: Sun, 25 Sep 2005 15:14:03 +0000 Subject: [PATCH] Stub implementation of the IsolateComponents action. --- dlls/msi/action.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 5a0eda93500..e2d557d3639 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -88,6 +88,7 @@ static UINT ACTION_RemoveIniValues(MSIPACKAGE *package); static UINT ACTION_MoveFiles(MSIPACKAGE *package); static UINT ACTION_PatchFiles(MSIPACKAGE *package); static UINT ACTION_BindImage(MSIPACKAGE *package); +static UINT ACTION_IsolateComponents(MSIPACKAGE *package); /* * consts and values used @@ -295,7 +296,7 @@ static struct _actions StandardActions[] = { { szInstallInitialize, ACTION_InstallInitialize }, { szInstallSFPCatalogFile, NULL}, { szInstallValidate, ACTION_InstallValidate }, - { szIsolateComponents, NULL}, + { szIsolateComponents, ACTION_IsolateComponents }, { szLaunchConditions, ACTION_LaunchConditions }, { szMigrateFeatureStates, NULL}, { szMoveFiles, ACTION_MoveFiles }, @@ -4091,3 +4092,24 @@ static UINT ACTION_BindImage(MSIPACKAGE *package) return ERROR_SUCCESS; } + +static UINT ACTION_IsolateComponents(MSIPACKAGE *package) +{ + static const WCHAR query[] = { + 'S','E','L','E','C','T',' ','*',' ','F','R','O','M',' ', + 'I','s','o','l','a','t','e','C','o','m','p','o','n','e','n','t',0 }; + MSIQUERY *view = NULL; + DWORD count = 0; + UINT rc; + + rc = MSI_DatabaseOpenViewW(package->db, query, &view); + if (rc == ERROR_SUCCESS) + { + rc = MSI_IterateRecords(view, &count, NULL, package); + if (count) + FIXME("%lu ignored IsolatedComponents table values\n", count); + msiobj_release(&view->hdr); + } + + return ERROR_SUCCESS; +} -- 2.11.4.GIT