Commit Graph

3276 Commits

Author SHA1 Message Date
Hans Leidekker d447ae63b3 msi: Honor msidbFeatureAttributesFollowParent. 2011-04-05 14:42:56 +02:00
Hans Leidekker ce0b3a030b msi: Fix parsing of an empty property followed by a non-empty property. 2011-04-05 14:42:52 +02:00
Hans Leidekker 68d6158875 msi: Implement and test MsiEnumComponentCostsA/W. 2011-04-01 16:16:04 +02:00
Francois Gouget 1d246654cb msi: Make load_ttf_name_id() static. 2011-03-31 13:10:55 +02:00
Hans Leidekker 31291ec205 msi: Fix building the message string in MSI_ProcessMessage. 2011-03-31 12:49:48 +02:00
Hans Leidekker 0aaf17c0d8 msi: Fix buffer size calculation in get_keypath. 2011-03-31 12:49:42 +02:00
Hans Leidekker 6f552fd2f7 msi: Avoid sprintf for simple concatenations. 2011-03-30 13:28:05 +02:00
Hans Leidekker 881ff642a2 msi: Make sure to access the 64-bit portion of the registry where needed on Wow64. 2011-03-30 13:28:05 +02:00
Hans Leidekker a0a7a7fc3d msi/tests: Remove unneeded Wow64 checks. 2011-03-30 13:28:05 +02:00
Hans Leidekker f3f25af900 msi: Implement MsiGetFileSignatureInformationA/W. 2011-03-30 13:28:05 +02:00
Hans Leidekker 8d58ddfe12 msi: Accept whitespace-only property values on the command line. 2011-03-30 13:28:05 +02:00
Hans Leidekker e4d19fc47b msi: Explicitly pass product code and platform to MSIREG_OpenUninstallKey and MSIREG_DeleteUninstallKey. 2011-03-30 13:28:05 +02:00
Hans Leidekker 6ad992c407 msi: Allocate the user token dynamically. 2011-03-30 13:28:05 +02:00
Hans Leidekker 419496d0c8 msi/tests: Allocate the user token dynamically and unify implementations. 2011-03-30 13:28:05 +02:00
Hans Leidekker c505c0fe98 msi/tests: Get rid of workarounds for win9x test failures. 2011-03-30 13:28:05 +02:00
Hans Leidekker e82a4896f3 msi: Ignore invalid upgrade codes in the PublishProduct action. 2011-03-30 13:28:05 +02:00
David Hedberg 6771ed40e8 msi: Add support for patching files. 2011-03-29 12:22:34 +02:00
David Hedberg 18973df9c7 msi: Generalize media helpers a bit. 2011-03-29 12:21:58 +02:00
David Hedberg fed6e5211c msi: Add an offset to sequence numbers belonging to files added by a patch. 2011-03-29 12:21:49 +02:00
Paul Vriens abdecfbe17 msi: Only call MSI_RecordGetString() when needed (Coverity). 2011-03-17 17:44:23 +01:00
Francois Gouget f7f9f5be12 msi: Make get_assembly_record() static. 2011-03-16 14:14:24 +01:00
Francois Gouget cadd7389db msi: Small tweak to the usage for readability. 2011-03-16 14:14:23 +01:00
Hans Leidekker bb40bebd2b msi: Let the InstallFiles action determine which private assembly files to install. 2011-03-16 14:14:23 +01:00
Hans Leidekker 12135acb70 msi: Skip reference counting for assembly components. 2011-03-16 14:14:23 +01:00
David Hedberg 477702c829 msi: Check other sources if install media not present at last used location. 2011-03-10 15:18:12 +01:00
David Hedberg 599b30833a msi: Use ordering information to update the correct row. 2011-03-10 15:18:00 +01:00
Hans Leidekker 2df374ac35 msi: Fix a memory leak (valgrind). 2011-03-10 14:10:16 +01:00
Hans Leidekker 888a19c02c msi: Build the key path from the display name if the component is an assembly. 2011-03-09 12:31:56 +01:00
Hans Leidekker e292eb121d msi: Also register components without a key path. 2011-03-09 12:31:53 +01:00
Hans Leidekker 429407cfb6 msi: Assume a file is present if the target exists with the same size and there's no file version or hash to verify. 2011-03-08 12:31:04 +01:00
Hans Leidekker be790cb0ad msi: Load media info even if there's no file to install. 2011-03-08 12:30:55 +01:00
Hans Leidekker 4a6c63e24a msi: Make a second pass to determine which files to install in the InstallFiles action.
This is needed because the target path can still change after CostFinalize
is executed. This happens in the .NET 1.1 Service Pack 1 installer where a
custom action calls SetTargetPath.
2011-03-08 12:30:49 +01:00
Hans Leidekker f1e59351de msi: Manage one assembly cache per major version of the .NET runtime. 2011-03-07 13:17:46 +01:00
Hans Leidekker 40ad619ac3 msi: Avoid registering duplicate source list information. 2011-03-07 13:17:34 +01:00
Hans Leidekker 659db6e902 msi: Compare keys only in compare_record. 2011-03-07 13:17:29 +01:00
Hans Leidekker 3878c451ca msi: Reduce filename to the long name in ITERATE_RemoveFiles. 2011-03-07 13:17:25 +01:00
Hans Leidekker 8e5230740a msi/tests: Check the result of get_system_dirs and get_user_dirs. 2011-03-07 13:17:18 +01:00
Marcus Meissner 8504548037 msi: Pointer to out of scope local variable (Coverity). 2011-03-04 16:26:01 +01:00
Austin English 0a284208bd msi/tests: Remove win9x hacks. 2011-02-28 13:12:50 +01:00
Paul Vriens 0d01212dac msi: Add a missing va_end() (Coverity). 2011-02-25 11:08:39 +01:00
Austin English 05126ec247 msi/tests: Remove win9x hacks. 2011-02-25 11:08:22 +01:00
Hans Leidekker 288718d8c3 msi: A custom action dll failing to load is not a fatal error. 2011-02-23 14:58:58 +01:00
Hans Leidekker 178d39ccc5 msi: Fix a trace. 2011-02-22 13:34:33 +01:00
Austin English 7de70a4804 msi/tests: Make sure to use return values (LLVM/Clang). 2011-02-17 17:29:54 +01:00
Austin English b6bea541db msi/tests: Remove dead assignments. 2011-02-17 17:29:46 +01:00
Detlef Riekenberg 1c2183a85a msi/tests: Fix a typo. 2011-02-14 12:28:17 +01:00
Austin English 27dd864f63 msi/tests: Make sure to use a return value (LLVM/Clang). 2011-02-11 14:48:19 +01:00
Austin English 5e92277f97 msi/tests: Don't check return values inside of if(0) (LLVM/Clang). 2011-02-11 14:48:11 +01:00
Hans Leidekker 92b5b3fd8c msi: Preserve existing advertise strings in the PublishComponents action. 2011-02-10 10:28:01 -06:00
Hans Leidekker ba9f1f770a msi: Get rid of msi_component_set_state and msi_feature_set_state. 2011-02-10 10:28:01 -06:00
Austin English a85adf3152 msi/tests: Make sure to use return values (LLVM/Clang). 2011-02-10 09:56:49 -06:00
Austin English 6816aa295e msi/tests: Make sure to use return values (LLVM/Clang). 2011-02-08 14:46:59 -06:00
Hans Leidekker b2b4005fe4 msi/tests: Show that a failing call to MsiGetSourcePath(SOURCEDIR) sets the SOURCEDIR property. 2011-02-07 10:17:20 -06:00
Hans Leidekker b96e5d21c6 msi: Split up resolve_folder. 2011-02-07 10:17:15 -06:00
Hans Leidekker 181beef870 msi: Try harder to remove non-persistent directories. 2011-02-02 14:09:14 +01:00
Hans Leidekker bf192f6ac9 msi: Handle out-of-memory condition in encode_streamname. 2011-02-01 18:14:09 +01:00
Hans Leidekker bc13c7eb90 msi: Reset file attributes before removing a file. 2011-02-01 18:14:08 +01:00
Hans Leidekker 08c3d2a5ab msi: Skip rollback custom actions. 2011-01-27 16:31:45 +01:00
Hans Leidekker aae1b21092 msi: Initialize a variable in get_patch_product_codes (clang). 2011-01-27 16:31:37 +01:00
Hans Leidekker eb4e5d6024 msi: Return the correct disk prompt size from MsiSourceListEnumMediaDisksW (clang). 2011-01-27 16:31:32 +01:00
Hans Leidekker 53b5e7f319 msi: Check a return value (clang). 2011-01-27 16:31:25 +01:00
Hans Leidekker 4a7371e32d msi/tests: Test a return value (clang). 2011-01-27 16:31:19 +01:00
Hans Leidekker af3733cde5 msi: Use a return value (clang). 2011-01-27 16:31:13 +01:00
Hans Leidekker e861283a62 msi: Make sure the return value is initialized in save_table (clang). 2011-01-27 16:31:07 +01:00
Hans Leidekker 15f0cc3130 msi: Check the return value of IActiveScript_AddNamedItem (clang). 2011-01-27 16:30:58 +01:00
Hans Leidekker a84af95d3e msi/tests: Consistently test return values (clang). 2011-01-27 16:30:53 +01:00
Hans Leidekker 78ce0a7350 msi: Check the return value of fetch_int (clang). 2011-01-27 16:30:48 +01:00
Greg Geldorp 0abf2da022 msi/tests: Check 64-bit reg view if key not present in 32-bit view. 2011-01-27 14:20:35 +01:00
Hans Leidekker 92203f1053 msi: Implement the MsiPublishAssemblies and MsiUnpublishAssemblies standard actions. 2011-01-24 16:04:28 +01:00
Hans Leidekker 3eaf33fff7 msi: Don't interpret assembly name attributes. 2011-01-24 16:04:23 +01:00
Hans Leidekker 167e4eff6d msi/tests: More tests for publishing and unpublishing assemblies. 2011-01-20 12:23:17 +01:00
Hans Leidekker 701f14801f msi: Clean up better when removing a product. 2011-01-20 12:23:09 +01:00
Hans Leidekker 8933013b62 msi: Search all contexts in ACTION_GetComponentInstallStates. 2011-01-20 12:23:04 +01:00
Hans Leidekker 3ada9f2c08 msi: Downgrade a warning.
Unreferenced files are normal when applying a patch.
2011-01-19 12:32:44 +01:00
Hans Leidekker 34b9e4c20f msi: Don't ignore disabled components when resolving install states.
Otherwise features are not published correctly.
2011-01-19 12:32:39 +01:00
Hans Leidekker 17cc23d365 msi: Free memory on error (valgrind). 2011-01-18 13:23:10 +01:00
Hans Leidekker e6e454ab16 msi/tests: Accept one more estimated size. 2011-01-13 17:33:10 +01:00
Hans Leidekker 257beae1fd msi: Fix some memory leaks (valgrind). 2011-01-13 17:26:24 +01:00
Hans Leidekker d08378a06f msi: Fix parsing of patch product codes (valgrind). 2011-01-12 14:55:56 +01:00
Hans Leidekker 94f4c0f07d msi: Fix a memory leak (valgrind). 2011-01-12 14:55:43 +01:00
Hans Leidekker 52f719d18c msi: Improve detection of installed local assemblies. 2011-01-11 16:05:46 +01:00
Hans Leidekker 6a0801a40a msi: Don't extract files for assemblies which are already installed. 2011-01-11 16:05:46 +01:00
Hans Leidekker 65581e0e33 msi: Fix detection of installed global assemblies. 2011-01-11 16:05:46 +01:00
Hans Leidekker 0c25649d3e msi: Add support for comparing TrueType font versions. 2011-01-11 16:05:46 +01:00
Hans Leidekker f133222d5e msi/tests: Add a test for MsiGetComponentState. 2011-01-10 10:42:43 +01:00
Hans Leidekker 35bdf01881 msi/tests: Add tests for publishing and unpublishing assemblies. 2011-01-10 10:42:39 +01:00
Hans Leidekker 01286b97e3 msi/tests: Mark a test result on some old Wow64 platforms as broken. 2011-01-06 18:28:52 +01:00
Alexandre Julliard 214ca2c01c msi: Convert translations to po files. 2011-01-06 16:21:30 +01:00
Greg Geldorp faf19ec966 msi/tests: Fix remaining Wow64 failures for action test set. 2011-01-04 16:03:02 +01:00
Greg Geldorp 536876afc3 msi/tests: Fix some failures on Wow64. 2011-01-03 14:57:29 +01:00
André Hentschel 648025881f msi/tests: Don't test function directly when reporting GetLastError(). 2010-12-30 15:01:11 +01:00
Hwang YunSong a0639d004d msi: Update Korean resource. 2010-12-27 15:39:38 +01:00
Hans Leidekker 6d10216891 msi: Change ACTION_UpdateComponentStates to take a feature pointer. 2010-12-24 15:51:31 +01:00
Hans Leidekker 706b54daa7 msi: Use a function to determine if a feature is selected. 2010-12-24 15:51:25 +01:00
Hans Leidekker 03a3292ffe msi: Set the install level to the maximum if the requested install state is not the default. 2010-12-24 15:51:14 +01:00
Hans Leidekker cbf7a1e86e msi: Set the Preselected property if the default feature selection is modified in a dialog. 2010-12-24 15:50:59 +01:00
Hans Leidekker 05a95f2e92 msi: Remove an incorrect error trace. 2010-12-23 17:45:11 +01:00
Hans Leidekker 6625f07ebf msi: Don't flag an error in the InstallServices action if the component does not exist. 2010-12-23 17:45:07 +01:00
Hans Leidekker 5f9dd9df1f msi: Global and local win32 assembly names are formatted differently. 2010-12-23 17:45:01 +01:00
Hans Leidekker 9e30f77568 msi: Add some traces. 2010-12-23 17:44:54 +01:00
Hans Leidekker 489f82e9b4 msi: Rewrite command line parsing to handle quoted values correctly. 2010-12-23 17:44:47 +01:00
Hans Leidekker 7bc7d09109 msi: Return INSTALLSTATE_UNKNOWN from MsiGetComponentState if the component is disabled. 2010-12-23 17:44:35 +01:00
André Hentschel 0e5c2f346d msi/tests: Remove superfluous check. 2010-12-20 12:47:41 +01:00
Alexandre Julliard 17e66e06d6 msi: Convert the dll registration to the IRegistrar mechanism. 2010-12-17 14:59:49 +01:00
Michael Stefaniuc 24ad5cb68f msi: Use an iface instead of a vtbl pointer in msi_remote_database_impl. 2010-12-15 13:18:45 +01:00
Michael Stefaniuc b36f401011 msi: Use an iface instead of a vtbl pointer in msi_remote_package_impl. 2010-12-15 13:18:40 +01:00
Michael Stefaniuc cb58010118 msi: Use an iface instead of a vtbl pointer in msi_custom_remote_impl. 2010-12-15 13:18:37 +01:00
Michael Stefaniuc 09019ba78a msi: Use an iface instead of an vtbl pointer in IClassFactoryImpl. 2010-12-15 13:18:12 +01:00
Hans Leidekker 942e2b2ac9 msi: Support MSIRUNMODE_LOGENABLED in MsiGetMode. 2010-12-15 12:02:01 +01:00
André Hentschel 6e9b841216 msi: Fix test failure on some 2k3 machines. 2010-12-13 16:24:10 +01:00
Hans Leidekker 1214dca412 msi/tests: Fix some test failures on Wow64. 2010-12-10 17:09:37 +01:00
Hans Leidekker 973821c775 msi/tests: Avoid a test failure on 64-bit. 2010-12-09 12:17:22 +01:00
Hans Leidekker b376f41766 msi: Don't try to install or remove ODBC drivers if the component is disabled. 2010-12-09 12:17:12 +01:00
Hans Leidekker 23169289e6 msi: Map neutral parts of package language ids to the system default language id. 2010-12-06 19:05:53 +01:00
Alexandre Julliard 24d2f694cb msi/tests: Fix a test failure on win2k. 2010-12-03 16:15:13 +01:00
Joris Huizer d4d7c263cb msi: Don't leak memory on error path. 2010-12-03 11:04:13 +01:00
Hans Leidekker ad6b7cd46a msi: Clear last error on success in MsiQueryFeatureState and MsiQueryProductState. 2010-12-02 12:47:42 +01:00
Hans Leidekker 06505c9a34 msi: Reuse temporary executables.
Fixes a custom action in the Office 2010 installer and makes installers
that pack multiple custom actions in an executable faster.
2010-12-02 12:47:41 +01:00
Hans Leidekker 79da91eb7e msi: Improve the stub implementations of RemoveExistingProducts and MigrateFeatureStates. 2010-11-30 16:21:19 +01:00
Hans Leidekker 09eb7f1eb7 msi: Look for transform files relative to the package directory. 2010-11-30 16:21:13 +01:00
Hans Leidekker c47ecd1ccc msi: Always ignore disabled components. 2010-11-30 16:21:01 +01:00
Hans Leidekker e609bb0453 msi/tests: Fix the scope of todo_wine in the tests for MsiApplyMultiplePatches.
These tests succeed on Wine if you run them from a volume for which GetDriveType
returns something other than DRIVE_FIXED, e.g. a ramdisk.
2010-11-26 14:59:35 +01:00
Hans Leidekker 4b5db7a9ac msi: Always initialize the dialog font list. Convert it to a standard Wine list.
Avoids accessing uninitialized memory when the TextStyle table is absent.
2010-11-26 14:59:19 +01:00
Hans Leidekker 967f73eaef msi: Trace errors from LoadLibraryShim. 2010-11-26 14:59:06 +01:00
Hans Leidekker 1f96b882e9 msi: Fix the Create/RemoveFolders actions to actually create and remove empty folders. 2010-11-26 14:59:02 +01:00
Peter Urbanec edab173047 msi: Add AMD64 platform definition to support installation of Visual C++ 8.0 redistributable. 2010-11-26 12:15:21 +01:00
Hans Leidekker a4de41f36b msi: Install assemblies only if the component action request is set to INSTALLSTATE_LOCAL. 2010-11-18 12:37:04 +01:00
Hans Leidekker c3adb72820 msi: Add support for importing and exporting the special _ForceCodepage table. 2010-11-17 14:01:13 +01:00
Hans Leidekker 18c55dee35 msi: Improve tracing in MsiQueryFeatureStateW. 2010-11-17 14:01:12 +01:00
Hans Leidekker a74e025335 msi: Fix handling of an empty language id list in msi_parse_summary. 2010-11-17 14:01:12 +01:00
Hans Leidekker b07ea863d2 msi: Trace the reinstall mode in hex in MsiReinstallFeatureW. 2010-11-17 14:01:12 +01:00
Hans Leidekker c3030532d4 msi: Forward MsiInstallMissingComponentA to MsiInstallMissingComponentW. 2010-11-16 11:48:20 +01:00
Hans Leidekker 6d13e2fd4b msi: Components don't require a key path. 2010-11-16 11:48:14 +01:00
Hans Leidekker 7cd084d041 msi: Honor msidbComponentAttributesPermanent. 2010-11-16 11:48:08 +01:00
Hans Leidekker b1b3252963 msi: Check component attributes before extracting the cabinet. 2010-11-16 11:48:04 +01:00
Paul Vriens e21115187e msi/tests: Cleanup properly on Win9x. 2010-11-15 13:20:06 +01:00
Hans Leidekker 9d46ba417e msi: Don't use a temporary directory for local assemblies. 2010-11-12 16:59:24 +01:00
Hans Leidekker 19a2d144b5 msi: Don't rebuild the target path for files from global assembly components. 2010-11-12 15:43:21 +01:00
Hans Leidekker b112d77126 msi: Honor msidbComponentAttributesNeverOverwrite. 2010-11-12 15:43:17 +01:00
Hans Leidekker a23514eece msi: Add support for installing side-by-side assemblies. 2010-11-11 12:23:06 +01:00
Hans Leidekker 3faddc21b3 msi: Calculate file install states after evaluating component conditions, not before. 2010-11-11 12:22:50 +01:00
Hans Leidekker fa9757bd73 msi: Put quotes around the filename in MsiApplyPatch. 2010-11-11 12:22:43 +01:00
Hans Leidekker 8fd47bbef7 msi: Remove redundant function msi_find_file. 2010-11-11 12:22:35 +01:00
Hans Leidekker 9ae062f63e msi: MsiGet/SetFeatureState must get and set the requested feature action, not the action taken. 2010-11-11 12:22:27 +01:00
André Hentschel 384b95533d msi: Downgrade an error. 2010-11-09 11:44:14 +01:00
Hans Leidekker 54a61744e0 msi: Features don't require a directory. 2010-11-05 17:15:34 +01:00
Paul Vriens a3c21e7145 msi: Update Serbian (Latin and Cyrillic) translations.
Translation by Đorđe Vasiljević.
2010-11-04 16:19:36 +01:00
Hans Leidekker 5871ad6d00 msi: Revert 3cd55cc916.
It breaks the Office 2003 installer.
2010-11-03 16:06:43 +01:00
Hans Leidekker ee7d8547b6 msi: Downgrade some warnings. 2010-11-03 16:06:21 +01:00
Hans Leidekker 566e67a491 msi: Components don't require a key path. 2010-11-03 16:06:17 +01:00
Hans Leidekker aef0aa30fd msi: Don't crash if there is no feature parent. 2010-11-03 16:06:12 +01:00
Hans Leidekker ced35838ea msi: An inactive dialog control does not require a property. 2010-10-26 15:24:46 +02:00
Hans Leidekker f3e7ed44f1 msi: Open the log file once per package. 2010-10-26 15:24:40 +02:00
Hans Leidekker 29ee65402b msi: Open the log file in shared write mode. 2010-10-26 15:24:33 +02:00
Aleksey Bragin 8c5718ec9d msi: Fix freed memory access and fix freeing of invalid pointer. 2010-10-22 19:05:12 +02:00
Hans Leidekker 031c70c965 msi: Register service arguments in the InstallServices action. 2010-10-22 12:07:00 +02:00
Hans Leidekker 7f5204e1bc msi: Register service dependencies in the InstallServices action. 2010-10-22 12:06:54 +02:00
Hans Leidekker 7a460eba71 msi: The LoadOrderGroup, StartName and Password fields from the ServiceInstall table are formatted strings. 2010-10-22 12:06:49 +02:00
Hans Leidekker d7dbb7e08d msi: Register the service description in the InstallServices action. 2010-10-22 12:06:44 +02:00
Hans Leidekker 5a0a53820a msi/tests: Add tests for msidbFeatureAttributesUIDisallowAbsent. 2010-10-22 12:06:39 +02:00
Hans Leidekker ded22a58c0 msi: Don't inline msi_feature_set_state and msi_component_set_state. 2010-10-22 12:06:33 +02:00
Hans Leidekker eaa57c5b7b msi: Compare strings without depending on thread locale. 2010-10-19 13:49:54 +02:00
Trygve Vea 6cb9f6ff2b msi: Updated Norwegian translation. 2010-10-18 11:45:58 +02:00
Hans Leidekker 8db3c0e358 msi/tests: Move test coverage for standard actions to a separate module. 2010-10-14 17:54:52 +02:00
Hans Leidekker 9cc4b0caae msi/tests: Don't create a nested restore point on recent versions of MSI.
We now set the MSIFASTINSTALL property which disables restore points.
2010-10-13 15:52:58 +02:00
Hans Leidekker 5d0a6b0004 msi: Store action data for deferred rollback actions too. 2010-10-13 15:52:38 +02:00
Hans Leidekker 7404e64373 msi: A commit or rollback custom action can be a deferred action at the same time. 2010-10-13 15:52:33 +02:00
Hans Leidekker 59d6dcfddd msi: Put keys from 32-bit packages starting with HLKM\Software under Wow6432Node on 64-bit. 2010-10-13 15:52:27 +02:00
Hans Leidekker 43a680a155 msi: Register class ids from 32-bit packages under Wow6432Node on 64-bit. 2010-10-13 15:52:19 +02:00
Hans Leidekker 0df4712658 msi/tests: Reduce the UI level for a couple of tests.
This makes the tests run faster because native only creates restore points
for installers with a basic UI level and higher.
2010-10-11 17:11:27 +02:00
Hans Leidekker eafebe0f7d msi/tests: Set the MSIFASTINSTALL property.
On recent versions of msi this prevents the creation of a system restore
point, which can take a very long time.
2010-10-11 17:11:27 +02:00
Hans Leidekker 5709fab04c msi/tests: Fix some test failures on 64-bit. 2010-10-11 17:11:26 +02:00
Hans Leidekker cf6e820106 msi: Allocate 3 bytes instead of 2 for in-memory string references.
Fixes an installer that stores string references as 2 byte integers and
grows the number of strings beyond the limit of 64k during installation.
2010-10-11 17:11:26 +02:00
Hans Leidekker b719338433 msi/tests: Use a different product code in the automation tests. 2010-10-11 17:11:26 +02:00
Hans Leidekker 3d33fb93cc msi/tests: Determine Wow64 mode just once. 2010-10-11 17:11:26 +02:00
Hans Leidekker 9e166a9690 msi/tests: Fix some test failures on 64-bit. 2010-10-06 20:46:37 +02:00
Hans Leidekker 3cd55cc916 msi Set the feature action to INSTALLSTATE_UNKNOWN if msidbFeatureAttributesUIDisallowAbsent is set. 2010-10-06 20:46:34 +02:00
Hans Leidekker 85874c07b9 msi: Look at the requested action instead of the action taken in MSI_SetFeatureStates. 2010-10-06 20:46:32 +02:00
Hans Leidekker a9c3195eb8 msi: Add package validation tests. 2010-10-06 20:46:30 +02:00
Hans Leidekker ca7cd1bf89 msi: Validate packages based on supported version, platform and languages. 2010-10-06 20:46:27 +02:00
Hans Leidekker 8bc9a499d1 msi: Remove a potentially noisy trace. 2010-10-06 16:22:26 +02:00
Hans Leidekker 52aab76eb2 msi: Put the uninstall key for 32-bit packages under Wow6432Node on 64-bit. 2010-10-05 17:50:16 +02:00
Andrew Eikum f62439c0d4 msi/tests: Fix copy-paste errors in tests. 2010-10-01 17:48:11 +02:00
Hans Leidekker dfc9351ba4 msi: Set more 64-bit properties. 2010-10-01 17:48:10 +02:00
Hans Leidekker ddbf3c754e msi: Remove an unnecessary warning. 2010-10-01 17:48:10 +02:00
Alexandre Julliard d1d1d0205d msi/tests: Make some variables static. 2010-10-01 13:36:43 +02:00
Alexandre Julliard b4109a079f msi/tests: Fix a test failure on 64-bit. 2010-09-30 17:51:17 +02:00
Alexandre Julliard 9fe16f8ae9 msi/tests: Avoid corrupting the pending file renames key on failure. 2010-09-30 17:51:17 +02:00
Hans Leidekker 259b5fdfa6 msi: Treat empty string as NULL in MsiGetSummaryInformationW. 2010-09-29 10:09:31 +02:00
Hans Leidekker 2b2fa04ca4 msi: Always check the return value of msi_string2idW. 2010-09-29 10:09:23 +02:00
Hans Leidekker fbf45bae04 msi: Use more descriptive variable names for installer properties. 2010-09-27 14:10:45 +02:00
Lauri Kenttä 57a64040e3 msi: Update Finnish translation. 2010-09-24 18:21:19 +02:00
Hans Leidekker cce01d98e7 msi: Set some missing system folder properties. 2010-09-24 18:21:07 +02:00
Hans Leidekker 337fb86c3b msi: Use binary search to find the insert index for a row. 2010-09-24 18:21:03 +02:00
Hans Leidekker e58a67e9cd msi: Avoid accessing memory before the left hand string in compare_substring. 2010-09-24 18:20:52 +02:00
Hans Leidekker c5ef45e5ef msi: A progid without a class is not an error. 2010-09-24 18:20:41 +02:00
Hans Leidekker d59c99067a msi/test: Add tests for MsiGetFeatureState. 2010-09-24 18:20:36 +02:00
Hans Leidekker d56d0d98a3 msi: Remove unused field from MSICOMPONENT structure. 2010-09-24 18:20:32 +02:00
Paul Vriens 3d6a57a494 msi/tests: Prevent a popup on Windows NT. 2010-09-20 13:57:45 +02:00
Hans Leidekker 39d6b6eb70 msi: Handle fdintNEXT_CABINET and fdintPARTIAL_FILE for cabinet streams. 2010-09-20 13:48:12 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Hans Leidekker a0ebe951b6 msi: Read supported platform and language ids from the summary information stream. 2010-09-18 13:06:28 +02:00
Hans Leidekker 3ef3e81f9e msi: Avoid a crash on database destruction. 2010-09-18 13:06:21 +02:00
Hans Leidekker 931bf05731 msi: Adjust the AdminUser property too after applying a patch. 2010-09-18 13:06:17 +02:00
Hans Leidekker 7e9d50a122 msi: Avoid pointer truncation in MSI_ViewFetch and MSI_ViewModify. 2010-09-13 10:59:18 -05:00
Paul Vriens 75c5484174 dlls: Fix some specfiles with respect to 'str' and 'wstr' usage. 2010-09-09 14:57:44 +02:00
Hans Leidekker 4a5b2abcf4 msi/tests: Fix some test failures on 64-bit. 2010-09-08 19:51:00 +02:00
Hans Leidekker f6e26351d5 msi: Open relocated package database in transacted mode. 2010-09-08 19:50:37 +02:00
Hans Leidekker d8b5879798 msi: Fix comparison of table ids in TABLE_Exists. 2010-09-08 19:50:15 +02:00
Francois Gouget b66eb177af msi/tests: Fix compilation on systems that don't support nameless unions or structs. 2010-09-07 16:01:39 +02:00
Hans Leidekker 2fb648c04f msi/tests: Add tests for 64-bit properties. 2010-09-02 18:05:22 +02:00
Hans Leidekker d2f1074725 msi: Set the System64Folder property on 64-bit. 2010-09-02 18:05:22 +02:00
Hans Leidekker 3730300a29 msi: Set the MsiAMD64 and Msix64 properties on 64-bit. 2010-09-02 18:05:22 +02:00
Hans Leidekker 18ebf2c576 msi: Return an error from MsiDatabaseGetPrimaryKeys if the table does not exist. 2010-09-02 18:05:22 +02:00
Hans Leidekker 0032706564 msi: Add stub implementations of MsiBeginTransaction and MsiEndTransaction. 2010-09-02 18:05:22 +02:00
Hans Leidekker dd7514a38d msi: Move database initialization to a separate function. 2010-08-27 12:08:33 +02:00
Hans Leidekker eef54ffe6b msi: Open the database storage in transacted mode when MSIDBOPEN_CREATE or MSIDBOPEN_TRANSACT is specified. 2010-08-27 12:08:29 +02:00
Hans Leidekker d411c49dd1 msi/tests: Fix a WoW64 test failure. 2010-08-27 12:08:22 +02:00
Hans Leidekker 44b15b061b msi: Create the product key if necessary in msi_publish_patches.
Fixes a regression caused by c9fb24927d.
2010-08-27 12:08:16 +02:00
Hans Leidekker 137dfbe80a msi/tests: Use a different product code in the package tests to avoid cascading test failures. 2010-08-27 12:08:08 +02:00
Hans Leidekker 378bb21f8e msi: Bump version to 4.5. 2010-08-18 15:31:25 +02:00
Hans Leidekker 5d85497a15 msi: Handle signature filenames in short|long notation. 2010-08-18 15:31:18 +02:00
Hans Leidekker 0c044c10d0 msi/tests: Skip SourceDir tests on win9x. 2010-08-18 15:30:49 +02:00
Hans Leidekker 7c89d4f28f msi/tests: Use HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE for registry tests.
Works around test failures on 64-bit Windows where MsiInstallProduct
returns success even though the registry keys specified in the
Registry table are not created.
2010-08-18 15:30:43 +02:00
Hans Leidekker 4102156e0f msi/tests: Fix some WoW64 test failures. 2010-08-18 15:30:28 +02:00
André Hentschel 428e8a5a01 msi: Prevent cryptic error. 2010-07-30 11:36:01 +02:00
Hans Leidekker 33b6ad7f73 msi/tests: Skip tests if UAC is enabled and the process is not running elevated. 2010-07-26 18:38:31 +02:00
Hans Leidekker 9686c95749 msi/tests: Skip a test if the current user has insufficient rights. 2010-07-26 18:38:31 +02:00
Hans Leidekker c2c98ae0c2 msi: Synchronize the spec file with version 5.0. 2010-07-23 11:46:23 +02:00
Hans Leidekker 64eec8f9fa msi: Register dlls directly in the SelfRegModules and SelfUnregModules actions. 2010-07-23 11:46:16 +02:00
Hans Leidekker bdda3b950c msi: Warn if a transform file cannot be opened. 2010-07-23 11:46:10 +02:00
Hans Leidekker 2b0c45674f msi: Add some tests for MsiGetSourcePath. 2010-07-23 11:46:06 +02:00
Hans Leidekker bd634c0491 msi: Set/unset the SourceDir property at the right stage in the execution sequence. 2010-07-23 11:46:01 +02:00
Hans Leidekker ad971803da msi: Never defer standard actions. 2010-07-23 11:45:49 +02:00
Hans Leidekker ac924566fb msi/tests: Properly contruct the icon path for win9x. 2010-07-23 11:45:44 +02:00
Hans Leidekker 148887082c msi/tests: Initialize a string buffer and fix some leaks. 2010-07-23 11:45:39 +02:00
Hans Leidekker bb5ab26720 msi: Fix a memory leak. 2010-07-23 11:45:35 +02:00
Hans Leidekker c4bf9fb710 msi/tests: Fix some more wow64 test failures. 2010-07-22 16:10:42 +02:00
Hans Leidekker c4511481db msi/tests: Avoid a long timeout in the test for DeleteServices. 2010-07-22 16:10:29 +02:00
Hans Leidekker 10a32a0b7a msi/tests: Skip tests when the current user has insufficient rights. 2010-07-22 16:10:19 +02:00
Hans Leidekker dad50e3aa0 msi/tests: Return an error code from helper_createpackage and package_from_db. 2010-07-22 16:09:56 +02:00
Hans Leidekker 21d09ffb43 msi/tests: Fix test failures on wow64. 2010-07-22 16:09:43 +02:00
Hans Leidekker d8b7a2099e msi: Downgrade a warning. 2010-07-22 16:09:14 +02:00
Hans Leidekker 06afeec2a5 msi: Make sure properties are updated after applying a patch. 2010-07-22 16:09:09 +02:00
Michael Stefaniuc 7e037305d6 msi: Remove the ignored common resource attributes. 2010-07-22 11:41:40 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Hans Leidekker d99b6d3934 msi: Properly advance the patch pointer in msi_check_product_patches.
Fixes patch enumeration when multiple patches are registered for a given product.
2010-07-21 13:24:01 +02:00
Hans Leidekker 409e2d7105 msi/tests: Double null-terminate a REG_MULTI_SZ string. 2010-07-21 13:24:01 +02:00
Hans Leidekker 3929369611 msi: Remove a fixme that no longer applies. 2010-07-21 13:24:01 +02:00
Hans Leidekker d10208e863 msi: Improve traces in db_get_raw_stream. 2010-07-21 13:24:00 +02:00
Hans Leidekker fba248642b msi: Reverse the transform storage list order.
This ensures that we use the most recently added stream if another
transform storage contains a stream by the same name. Fixes
wordconv.msp, an update for Word 2007.
2010-07-21 13:24:00 +02:00
Hans Leidekker 424e3a9fb8 msi: Move the component enabled check into the standard actions. 2010-07-21 13:24:00 +02:00
Hans Leidekker 568c7c198c msi: Set feature states to the installed state if the Preselected property is not set. 2010-07-21 13:24:00 +02:00
Hans Leidekker c9fb24927d msi: Publish patches regardless of any features being installed locally. 2010-07-21 13:24:00 +02:00
Hans Leidekker 9b329d5bab msi: Keep track of the patch filename in apply_registered_patch. 2010-07-20 16:29:45 +02:00
Hans Leidekker b87271150a msi: Unpublish the product after running all the actions. 2010-07-20 16:29:45 +02:00
Hans Leidekker f7aa88fe7d msi: Store the patch state in the registry. 2010-07-20 16:29:45 +02:00
Hans Leidekker 03cddf9d05 msi: Add a test for MsiSetFeatureState. 2010-07-20 16:29:45 +02:00
Paul Vriens f2135efe48 msi: Add the Serbian (Cyrillic) translation.
Translation by Nenad Vujic <nesa24casa@gmail.com>
2010-07-20 14:53:22 +02:00
Paul Vriens 4662e12164 msi: Add the Serbian (Latin) translation.
Translation by Nenad Vujic <nesa24casa@gmail.com>
2010-07-19 14:38:16 +02:00
Andrew Nguyen 93f92d51a4 msi/tests: Skip some source tests if a required product key cannot be created. 2010-07-09 11:41:11 +02:00
Andrew Nguyen 9c850c9f8a msi/tests: Fix a source test comment. 2010-07-09 11:41:00 +02:00
Andrew Nguyen abe900a23c msi/tests: Remove a redundant source test. 2010-07-09 11:40:56 +02:00
Andrew Nguyen ba180b8600 msi/tests: Free the user SID string buffer with the correct deallocator in the source tests. 2010-07-09 11:40:36 +02:00
Andrew Nguyen 3b79a7b4ac msi/tests: Skip patch tests if product installation failed. 2010-07-09 11:40:28 +02:00
Andrew Nguyen f01b9aab09 msi/test: Uninstall the test product when skipping patch tests.
This seems to be a reasonable cleanup action.
2010-07-09 11:39:14 +02:00
Andrew Nguyen 577554260e msi/tests: Delete the test patch file for proper patch test cleanup. 2010-07-09 11:39:10 +02:00
Andrew Nguyen ff188900f3 msi/tests: Run the automation tests in silent mode to avoid a dialog. 2010-07-09 11:39:07 +02:00
Alexandre Julliard 044669e709 msi/tests: Check the x86 program directory first for installed files. 2010-07-02 14:14:44 +02:00
Alexandre Julliard bcb869a342 msi/tests: Reset the enumeration index for MsiEnumProducts before testing it. 2010-07-01 13:21:34 +02:00
Gustavo Henrique Milaré e45330968a msi: Update Portuguese (Brazilian) translation. 2010-06-25 13:30:33 +02:00
Hans Leidekker 2c20c35d3c msi: Avoid a crash when the cabinet file must be downloaded.
Fixes a regression caused by e5869d5d5c.
2010-06-23 15:27:05 +02:00
Hans Leidekker ff0f2b35e1 msi: Add tests for MsiLocateComponent and make them pass. 2010-06-14 14:41:45 +02:00
Hans Leidekker b4674a3c2b msi: Don't trace the contents of an output buffer. 2010-06-14 14:41:42 +02:00
Hans Leidekker 67f15e7149 msi: Implement MsiGetFeatureCostA/W. 2010-06-11 15:54:54 +02:00
Hans Leidekker 6b1a1579f6 msi: Update an existing record even if the low bit in the transform mask is set. 2010-06-11 15:54:47 +02:00
Hans Leidekker 73774b3ef8 msi: Disable an optimization in the execution of WHERE clauses.
There's no guarantee that the condition strings are in the string table.
2010-06-11 15:54:35 +02:00
Hans Leidekker 15f5b9dca3 msi: Compare file versions as numbers instead of strings. 2010-06-11 15:54:24 +02:00
Alexandre Julliard 04a6a14c1f msi: Don't allow entering text in a scroll text richedit control. 2010-06-10 14:48:28 +02:00
Hans Leidekker b8ac327e7e msi: Display the directory identifier instead of the full path in standard actions. 2010-06-09 16:15:52 +02:00
Hans Leidekker 5ecbc4f8ca msi: Directly pass the disk id to installfiles_cb.
The MEDIAINFO structure is modified by the cabinet_next_cabinet
callback if there's a continuous cabinet in the installer.
2010-06-09 16:14:24 +02:00
Hans Leidekker dcb501decd msi: Create directories right before installing files. 2010-06-09 16:12:44 +02:00
Matijn Woudt 1a159dfddc msi/tests: Testcases for CREATE TABLE. 2010-06-07 15:15:49 +02:00
Andrew Eikum c99c5a41e9 msi/tests: Fix install tests for Win9x. 2010-06-07 13:44:20 +02:00
Hwang YunSong 761ce56643 msi: Update Korean resource. 2010-06-02 16:01:57 +02:00
Hans Leidekker e1a63fd5c2 msi: Pass the control name to ControlEvent_SubscribeToEvent instead of uninitialized memory. 2010-05-31 12:46:08 +02:00
Hans Leidekker 35a0461baa msi: Improve parsing of patch summary information. 2010-05-31 12:46:08 +02:00
Hans Leidekker d17ebc4032 msi: Advance to the right cabinet in ACTION_MsiPublishAssemblies. 2010-05-31 12:46:08 +02:00
Hans Leidekker 8bfc08771c msi: Don't keep handles open to the patch database in MSI_ApplyPatchW. 2010-05-31 12:46:08 +02:00
Andrew Eikum beb0b2bc05 msi: Publish icons into the correct directory. 2010-05-31 12:14:27 +02:00
Hans Leidekker c35856dd09 msi: End the search for a directory signature if the parent cannot be found. 2010-05-25 13:29:56 +02:00
Hans Leidekker c2ce561469 msi: Add a test for properties updated by a patch. 2010-05-25 13:29:35 +02:00
Hans Leidekker c815432a50 msi: Get rid of the goto in MSI_ApplicablePatchW. 2010-05-25 13:29:22 +02:00
Alexandre Julliard 598a25de82 msi: Ignore min/max versions if their values are null. 2010-05-24 20:33:28 +02:00
Sven Baars 23f9b07d6a msi: Update Dutch translation. 2010-05-24 11:14:52 +02:00
Sven Baars cc9e357ecf msi: Fix English translation. 2010-05-24 11:14:44 +02:00
Hans Leidekker 5395c999d2 msi: Add more tests for feature overrides. 2010-05-20 16:25:44 +02:00
Hans Leidekker e16f187791 msi: Test the reference count on the installer object retrieved from a session object. 2010-05-20 16:25:44 +02:00
Hans Leidekker 2e24d34b22 msi: Fix some leaks in the tests. 2010-05-20 16:25:44 +02:00
Hans Leidekker 7a370c8d7b msi: Consistently use the allocation macros. 2010-05-20 16:25:44 +02:00
Hans Leidekker 57a6b6fb38 msi: Release the package in MsiGetMode and MsiSetMode. 2010-05-20 16:25:44 +02:00
Hans Leidekker e5dd509901 msi: Release the package in MsiGetProductPropertyW. 2010-05-20 16:25:44 +02:00
Hans Leidekker a4c25196b0 msi: Fix memory leaks in deformat_string_internal. 2010-05-20 16:25:44 +02:00
Frédéric Delanoy 2ba53f476c msi: Update French translation. 2010-05-13 19:44:59 +02:00
Hans Leidekker e60bf536eb msi: Improve some traces. 2010-05-12 18:46:35 +02:00
Hans Leidekker 6475c11c1f msi: Only extract a file when its disk id matches the media disk id.
This makes sure that an updated file is extracted from the cabinet stream
included in the patch, instead of the original source.
2010-05-12 18:46:32 +02:00
Hans Leidekker 376c2fd02b msi: Store the disk id in the MSIFILE structure. 2010-05-12 18:46:28 +02:00
Hans Leidekker dd305c3700 msi: Set the SourceDir property to the registered source if the product is installed. 2010-05-11 16:28:18 +02:00
Hans Leidekker 41a7f025e4 msi: Avoid A->W conversions in msi_publish_install_properties. 2010-05-11 16:28:12 +02:00
Hans Leidekker 347bb13fc7 msi: Set install properties just once. 2010-05-11 16:28:07 +02:00
Hans Leidekker 4d2fb55e4e msi: Add a test to show that the InstallSource property is unchanged after an upgrade. 2010-05-11 16:28:02 +02:00
Hans Leidekker 715a506fac msi: Add more patch registration tests. 2010-05-11 16:27:56 +02:00
Hans Leidekker 06a8cc2a06 msi: Add a test to show that patches are not committed to the local package database. 2010-05-11 16:27:49 +02:00
Gerald Pfeifer acd9732ffe msi: Fix the return value of msi_copy_outval in the error case. 2010-05-10 10:10:24 +02:00
Aurimas Fišeras aa2542bfcd msi: Update Lithuanian translation. 2010-05-10 10:05:32 +02:00
Detlef Riekenberg 2a9b4e0142 msiexec: Use resource in msi for a help dialog to allow translation. 2010-05-06 17:56:44 +02:00
Hans Leidekker 82d7b04c2c msi: Apply registered patches in MsiOpenPackage. 2010-05-05 15:27:12 +02:00
Hans Leidekker 881ef98479 msi: Forward MsiDetermineApplicablePatchesA to MsiDetermineApplicablePatchesW. 2010-05-05 15:27:08 +02:00
Hans Leidekker 920fc345ba msi: Register more patch details. 2010-05-04 13:15:00 +02:00
Hans Leidekker 74641ab8db msi: Handle non-null product code in MSI_ApplyPatchW. 2010-05-04 13:15:00 +02:00
Hans Leidekker 25460075cc msi: Add some tests for patch registration. 2010-05-04 13:15:00 +02:00
Hans Leidekker 23eabb44c8 msi: Make a local copy of patch packages. 2010-05-04 13:15:00 +02:00
Gerald Pfeifer be8d0bbb1e msi: Remove variable product_code which is not really used from MSI_ApplyPatchW. 2010-05-03 15:38:47 +02:00
Gerald Pfeifer effda58ad3 msi: Fix return value for ITERATE_RemoveFiles (in the error case). 2010-05-03 15:38:39 +02:00
Sven Baars 2d2823ae44 msi: Fix Dutch translation. 2010-05-03 13:55:21 +02:00
Paul Vriens 1cc32247e0 msi: Update Dutch translation. 2010-05-03 13:54:41 +02:00
Hans Leidekker 162780d112 msi: Support multiple patches per package. 2010-04-29 10:19:40 -05:00
Hans Leidekker df6b195a1a msi: Simplify msi_set_context. 2010-04-29 10:19:40 -05:00
Hans Leidekker c6f281fcf7 msi: Make sure to only open a patch database in msi_apply_patch_package. 2010-04-29 10:19:40 -05:00
Hans Leidekker 73f1294431 msi: Test the contents of some of the system tables before and after patching. 2010-04-29 10:19:40 -05:00
Hans Leidekker 319465831c msi: Store a copy of the file extension in the MSIMIME structure.
Fixes a crash that occurs when the extension foreign key points to nowhere.
Reported by Vincent Pelletier.
2010-04-29 10:19:39 -05:00
Hans Leidekker 7d9d6707c1 msi: Fix some test failures on Windows. 2010-04-29 10:19:39 -05:00
Hans Leidekker 82fdc926a2 msi: Move all file comparisons to CostFinalize.
File costing can't be done correctly on upgrades unless we know
which files are going to be overwritten.
2010-04-28 15:04:40 -05:00
Hans Leidekker 9af488d236 msi: Always evaluate component conditions.
Fixes a regression caused by 0d770c96fe.
2010-04-28 15:04:40 -05:00
Hans Leidekker 43f7bc8687 msi/tests: Use a unique product code when testing MsiConfigureFeature parameter validation.
This is to avoid ERROR_INSTALL_ALREADY_RUNNING errors on Windows.
2010-04-28 15:04:39 -05:00
Hans Leidekker d9510f5962 msi: Only set the property in the Reinstall event. 2010-04-28 15:04:39 -05:00
Hans Leidekker f23bf7a460 msi/tests: Return INVALID_FILE_SIZE from get_pf_file_size if the file can't be opened.
So we can distinguish a zero-sized file from a file that doesn't exist.
2010-04-28 15:04:39 -05:00
Hans Leidekker a5a58910b6 msi: Try to apply a patch to each product it is targeted for.
A patch may target multiple products but only one of them needs to
be installed for the patch to succeed. Fixes an Acrobat Reader 9 patch.
2010-04-21 11:57:33 +02:00
Hans Leidekker e31ee69f37 msi: Rename MSI_GetPropertyW and MSI_SetPropertyW.
For consistency with related functions msi_dup_property and msi_get_property_int
and because there is no ANSI version of these functions.
2010-04-21 11:57:33 +02:00
Hans Leidekker 44b7983913 msi: Make MSI_SetPropertyW take a pointer to a database instead of a package. 2010-04-21 11:57:33 +02:00
Hans Leidekker 186f4efa3f msi: Make msi_get_property_int and friends take a pointer to a database instead of a package.
They only operate on a database and this way we can use them before a package is created.
2010-04-21 11:57:33 +02:00
Hans Leidekker 031d2c63e8 msi: Add a test to show that MsiOpenPackage must apply any existing patches. 2010-04-21 11:57:33 +02:00
Octavian Voicu 80878d00da msi: Sync combo control value with associated property. 2010-04-19 15:13:30 +02:00
Octavian Voicu 857f979468 msi: Fill combo control with items from database. 2010-04-19 15:13:19 +02:00
Octavian Voicu 2793a4fd52 msi: Use standard window class for combo control and add error checking. 2010-04-19 15:12:48 +02:00
Octavian Voicu 9c892430ba msi: Fix crash when calling MsiGetActiveDatabase with invalid remote handle. 2010-04-19 15:12:41 +02:00
Hans Leidekker d8504e0550 msi: Handle MSIDBOPEN_PATCHFILE properly in MsiOpenDatabase. 2010-04-19 14:57:49 +02:00
Hans Leidekker 9a9faeffd8 msi: Don't assume unversioned files are present. 2010-04-19 14:57:43 +02:00
Hans Leidekker f08c355e09 msi: Add beginnings of a test module that concentrates on patches. 2010-04-19 14:57:35 +02:00
Hans Leidekker 8f53405544 msi: Remove the string index parameter from msi_addstringW. 2010-04-19 14:57:02 +02:00