From e8bdbf879a70a0b0bae35ebb95b7c3e223117abd Mon Sep 17 00:00:00 2001 From: Hans Leidekker Date: Wed, 11 May 2011 11:25:40 +0200 Subject: [PATCH] msi: Don't resolve child folders if the parent path is unmodified. --- dlls/msi/action.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 669881c9a6b..32cea4efad1 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c @@ -3018,6 +3018,12 @@ void msi_resolve_target_folder( MSIPACKAGE *package, const WCHAR *name, BOOL loa path = msi_build_directory_name( 3, parent->ResolvedTarget, folder->TargetDefault, NULL ); } msi_clean_path( path ); + if (folder->ResolvedTarget && !strcmpiW( path, folder->ResolvedTarget )) + { + TRACE("%s already resolved to %s\n", debugstr_w(name), debugstr_w(folder->ResolvedTarget)); + msi_free( path ); + return; + } msi_set_property( package->db, folder->Directory, path ); msi_free( folder->ResolvedTarget ); folder->ResolvedTarget = path;