msi: Let the InstallFiles action determine which private assembly files to install.
This commit is contained in:
parent
12135acb70
commit
bb40bebd2b
|
@ -282,8 +282,11 @@ MSIASSEMBLY *load_assembly( MSIPACKAGE *package, MSICOMPONENT *comp )
|
|||
|
||||
if (a->application)
|
||||
{
|
||||
FIXME("we should probably check the manifest file here\n");
|
||||
a->installed = (msi_get_property_int( package->db, szInstalled, 0 ) != 0);
|
||||
/* We can't check the manifest here because the target path may still change.
|
||||
So we assume that the assembly is not installed and lean on the InstallFiles
|
||||
action to determine which files need to be installed.
|
||||
*/
|
||||
a->installed = FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -74,7 +74,7 @@ static msi_file_state calculate_install_state( MSIFILE *file )
|
|||
TRACE("file %s is not scheduled for install\n", debugstr_w(file->File));
|
||||
return msifs_skipped;
|
||||
}
|
||||
if ((comp->assembly && !comp->assembly->installed) ||
|
||||
if ((comp->assembly && !comp->assembly->application && !comp->assembly->installed) ||
|
||||
GetFileAttributesW( file->TargetPath ) == INVALID_FILE_ATTRIBUTES)
|
||||
{
|
||||
TRACE("file %s is missing\n", debugstr_w(file->File));
|
||||
|
|
Loading…
Reference in New Issue