Module: wine Branch: master Commit: 9d46ba417ea6cbc05466d18fe0a44ce2ace87db4 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9d46ba417ea6cbc05466d18fe0...
Author: Hans Leidekker hans@codeweavers.com Date: Fri Nov 12 16:18:08 2010 +0100
msi: Don't use a temporary directory for local assemblies.
---
dlls/msi/action.c | 2 +- dlls/msi/files.c | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 6292f4f..5328193 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -2170,7 +2170,7 @@ static void set_target_path( MSIPACKAGE *package, MSIFILE *file ) TRACE("file %s is named %s\n", debugstr_w(file->File), debugstr_w(file->FileName));
msi_free( file->TargetPath ); - if (assembly) + if (assembly && !assembly->application) { if (!assembly->tempdir) assembly->tempdir = get_temp_dir(); file->TargetPath = build_directory_name( 2, assembly->tempdir, file->FileName ); diff --git a/dlls/msi/files.c b/dlls/msi/files.c index b3a6176..4dcf5bd 100644 --- a/dlls/msi/files.c +++ b/dlls/msi/files.c @@ -186,9 +186,10 @@ static BOOL installfiles_cb(MSIPACKAGE *package, LPCWSTR file, DWORD action, return FALSE;
msi_file_update_ui(package, f, szInstallFiles); - if (!f->Component->assembly) + if (!f->Component->assembly || f->Component->assembly->application) + { msi_create_directory(package, f->Component->Directory); - + } *path = strdupW(f->TargetPath); *attrs = f->Attributes; } @@ -268,9 +269,10 @@ UINT ACTION_InstallFiles(MSIPACKAGE *package) TRACE("copying %s to %s\n", debugstr_w(source), debugstr_w(file->TargetPath));
msi_file_update_ui(package, file, szInstallFiles); - if (!file->Component->assembly) + if (!file->Component->assembly || file->Component->assembly->application) + { msi_create_directory(package, file->Component->Directory); - + } rc = copy_install_file(package, file, source); if (rc != ERROR_SUCCESS) {