Index: dll/win32/msi/dialog.c =================================================================== --- dll/win32/msi/dialog.c (revision 73519) +++ dll/win32/msi/dialog.c (working copy) @@ -3165,13 +3165,13 @@ MSICOSTTREE_SELFONLY, INSTALLSTATE_LOCAL, &each_cost))) { /* each_cost is in 512-byte units */ - total_cost += each_cost * 512; + total_cost += ((LONGLONG)each_cost) * 512; } if (ERROR_SUCCESS == (MSI_GetFeatureCost(dialog->package, feature, MSICOSTTREE_SELFONLY, INSTALLSTATE_ABSENT, &each_cost))) { /* each_cost is in 512-byte units */ - total_cost -= each_cost * 512; + total_cost -= ((LONGLONG)each_cost) * 512; } } return total_cost;