When checking for an existing .lnk shortcut extension on the filename
do not just search for '.' but actually verify it is '.lnk'.
diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index aedf203..c3a6eed 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -4701,7 +4701,7 @@
sz = 0x100;
MSI_RecordGetStringW(row,3,buffer,&sz);
reduce_to_longfilename(buffer);
- if (!strchrW(buffer,'.'))
+ if (!strchrW(buffer,'.') || strcmpiW(strchrW(buffer,'.'),szlnk))
strcatW(buffer,szlnk);
target_file = build_directory_name(2, target_folder, buffer);
HeapFree(GetProcessHeap(),0,target_folder);