msi: Resolve the target folder if necessary when building link filenames.

This commit is contained in:
Hans Leidekker 2011-08-24 10:22:33 +02:00 committed by Alexandre Julliard
parent d7952d8a24
commit 9d68804379
1 changed files with 11 additions and 1 deletions

View File

@ -3518,7 +3518,17 @@ static WCHAR *get_link_file( MSIPACKAGE *package, MSIRECORD *row )
directory = MSI_RecordGetString( row, 2 ); directory = MSI_RecordGetString( row, 2 );
link_folder = msi_get_target_folder( package, directory ); link_folder = msi_get_target_folder( package, directory );
if (!link_folder)
{
/* some installers use a separate root */
MSIFOLDER *folder = msi_get_loaded_folder( package, directory );
while (folder->Parent && strcmpW( folder->Parent, folder->Directory ))
{
folder = msi_get_loaded_folder( package, folder->Parent );
}
msi_resolve_target_folder( package, folder->Directory, TRUE );
link_folder = msi_get_target_folder( package, directory );
}
/* may be needed because of a bug somewhere else */ /* may be needed because of a bug somewhere else */
msi_create_full_path( link_folder ); msi_create_full_path( link_folder );