For typelibs index 1 do not add \\1 to the path. This cleans up registry diffs with native MSI.
diff --git a/dlls/msi/action.c b/dlls/msi/action.c index 2dc8fdc..6a7c84c 100644 --- a/dlls/msi/action.c +++ b/dlls/msi/action.c
@@ -4259,8 +4259,13 @@ sz = strlenW(tl_struct->source)+4; sz *= sizeof(WCHAR); - tl_struct->path = HeapAlloc(GetProcessHeap(),0,sz); - sprintfW(tl_struct->path,fmt,tl_struct->source, lpszName); + if ((INT)lpszName == 1) + tl_struct->path = strdupW(tl_struct->source); + else + { + tl_struct->path = HeapAlloc(GetProcessHeap(),0,sz); + sprintfW(tl_struct->path,fmt,tl_struct->source, lpszName); + } TRACE("trying %s\n", debugstr_w(tl_struct->path)); res = LoadTypeLib(tl_struct->path,&tl_struct->ptLib);