diff --git a/dlls/msi/action.c b/dlls/msi/action.c
index 953ecb5..953c65b 100644
--- a/dlls/msi/action.c
+++ b/dlls/msi/action.c
@@ -630,22 +630,26 @@
     if (szPackagePath)   
     {
         LPWSTR p, check, dir;
+        LPCWSTR file;
 
         dir = strdupW(szPackagePath);
         p = strrchrW(dir, '\\');
         if (p)
+        {
             *(++p) = 0;
+            file = szPackagePath + (p - dir);
+        }
         else
         {
             msi_free(dir);
             dir = msi_alloc(MAX_PATH*sizeof(WCHAR));
             GetCurrentDirectoryW(MAX_PATH, dir);
             lstrcatW(dir, cszbs);
-            p = (LPWSTR)szPackagePath;
+            file = szPackagePath;
         }
 
         msi_free( package->PackagePath );
-        package->PackagePath = msi_alloc((lstrlenW(dir) + lstrlenW(p) + 2) * sizeof(WCHAR));
+        package->PackagePath = msi_alloc((lstrlenW(dir) + lstrlenW(file) + 1) * sizeof(WCHAR));
         if (!package->PackagePath)
         {
             msi_free(dir);
@@ -653,8 +657,7 @@
         }
 
         lstrcpyW(package->PackagePath, dir);
-        lstrcatW(package->PackagePath, cszbs);
-        lstrcatW(package->PackagePath, p);
+        lstrcatW(package->PackagePath, file);
 
         check = msi_dup_property( package, cszSourceDir );
         if (!check)
