Hans Leidekker
e3143f1105
msi: Update version resource.
2014-11-27 13:14:16 +01:00
Michael Stefaniuc
f52983807e
msi/tests: Remove redundant if check (PVS-Studio).
2014-11-26 17:26:34 +01:00
Michael Stefaniuc
481ff775ca
msi: Simplify check for an empty string (PVS-Studio).
2014-11-05 19:37:10 +09:00
Hans Leidekker
609de1a80a
msi: Call execute_script directly in InstallFinalize.
2014-11-04 21:19:31 +09:00
Hans Leidekker
98ae03ff4d
msi: Update properties after each transform that affects the property table.
2014-11-04 21:19:28 +09:00
Hans Leidekker
35ce56ac85
msi: Pass a database pointer to msi_clone_properties instead of a package pointer.
2014-11-04 21:19:24 +09:00
Austin English
d2bc004264
msi: Add stubs for MsiRemovePatches(A/W).
2014-11-03 16:35:38 +09:00
Hans Leidekker
7f57d8f19a
msi: Format registry values before interpreting value type.
2014-10-31 10:49:19 +09:00
Bruno Jesus
8f79f5f54b
msi: Remove duplicate if condition.
2014-10-27 14:36:03 +09:00
Hans Leidekker
1e3f15d88c
msi: Support more transform validation flags.
2014-10-21 18:50:01 +09:00
Hans Leidekker
5cb10c96b2
msi: Don't skip the media check for the first volume.
...
Some installers require the first volume to be reinserted.
2014-10-15 22:40:03 +09:00
Nikolay Sivov
8f971bfee6
msi: Use E_NOT_SUFFICIENT_BUFFER definition.
2014-10-08 13:13:36 +02:00
Hans Leidekker
f41ac94e0e
msi: Include the terminating null in the buffer size for decoded stream names.
2014-10-02 16:59:04 +02:00
Hans Leidekker
29baed1bc2
msi: Improve support for advertized shortcuts.
2014-09-12 15:30:13 +02:00
Sebastian Lackner
582f2640d2
msi: Fix ITERATE_MoveFiles when no source- and destname is specified.
2014-09-04 13:37:15 +02:00
Hans Leidekker
a5d8ab57f6
msi: Check transform validation flags.
2014-09-03 16:31:17 +02:00
Hans Leidekker
614cb7eac7
msi: Update the cached product code when the property has changed.
2014-09-01 21:10:12 +02:00
Hans Leidekker
5709249986
msi: Return an error from MSI_GetComponentPath if the buffer is too small.
2014-09-01 21:10:12 +02:00
Hans Leidekker
04f9058a28
msi: Set the OutOfNoRbDiskSpace property.
2014-09-01 21:10:12 +02:00
Hans Leidekker
90f023a635
msi/tests: Make tests pass when running from the root directory.
2014-09-01 21:10:11 +02:00
Piotr Caban
de9f19df32
msi: Add more feature state tests.
2014-07-24 13:02:47 +02:00
Piotr Caban
b1a4055245
msi: Don't check feature install level on features specified in arguments.
2014-07-24 13:02:45 +02:00
Piotr Caban
0dff7bff9a
msi: Fix feature actions overriding in process_state_property.
2014-07-24 13:02:43 +02:00
Piotr Caban
331c86f124
msi: Don't publish features with non positive install level.
2014-07-24 13:02:42 +02:00
Akihiro Sagawa
0eed829f7f
msi/tests: Add CLSID registry tests for mixed package.
2014-07-21 18:42:45 +02:00
Akihiro Sagawa
5b76cd199a
msi/tests: Add non-existence value tests for mixed package.
2014-07-21 15:57:23 +02:00
Akihiro Sagawa
6fc6d32da2
msi: Move set_installed_prop() call because platform information is needed in it.
2014-07-21 15:56:54 +02:00
Daniel Beitler
deb2742267
msi: Prevent call to memset with a null pointer in get_tablecolumns function.
2014-05-19 10:01:43 +02:00
Jérôme Gardou
70225a4de3
msi: Expand REG_EXPAND_SZ keys when resolving AppSearch entries.
2014-05-01 10:50:39 +02:00
Hans Leidekker
95d72ae6f0
msi: Avoid a crash when MIME entries point to non-existing extensions.
2014-05-01 10:18:15 +02:00
Hans Leidekker
4c8edb1b4c
msi/tests: Fix a couple of memory leaks (valgrind).
2014-04-30 15:15:30 +02:00
Nikolay Sivov
5497a41e92
msi: Fix a leak on error path (Coverity).
2014-04-10 09:11:52 +02:00
Nikolay Sivov
0bcf4a5bb6
msi: Fix a leak on error path (Coverity).
2014-04-10 09:11:50 +02:00
Vincent Povirk
a4c6107d81
msi: Fix infinite loop.
2014-04-01 10:43:42 +02:00
Nikolay Sivov
195168351f
msi: Fix a record leak on failure removing a column (Coverity).
2014-03-27 12:06:04 +01:00
Nikolay Sivov
203d282a78
msi: Fix a record leak on error path (Coverity).
2014-03-27 12:06:04 +01:00
Nikolay Sivov
c01c0b52ed
msi: Fix a leak of allocated string buffer on error path (Coverity).
2014-03-27 12:06:04 +01:00
Nikolay Sivov
dc33b13581
msi: Fix a record leak on error paths (Coverity).
2014-03-27 12:06:04 +01:00
Nikolay Sivov
20e4705192
msi: Update MsiServerMessage registration version to match module version.
2014-03-20 17:40:36 +01:00
Nikolay Sivov
117ae25764
msi: MsiInstaller coclass is not included in a typelib.
2014-03-20 17:40:33 +01:00
Nikolay Sivov
0e90cebce0
msi: 'optional' only applies to VARIANT and VARIANT* types.
2014-03-18 11:40:51 +01:00
Nikolay Sivov
29eaebaa34
msi: Update feature selection bitmaps.
2014-03-12 10:24:05 +01:00
Marcus Meissner
3fa41c9e70
msi: Fixed missing free in an error path (Coverity).
2014-03-10 10:41:15 +01:00
Francois Gouget
f6ccfaa6f3
msi/tests: Update is_process_limited() to deal with non-administrator accounts.
2014-03-05 11:50:35 +01:00
Francois Gouget
38aa71b2c6
msi/tests: Skip some package tests if in a non-administrator, non-power user account.
2014-03-05 11:50:30 +01:00
Francois Gouget
601c5a1a68
msi/tests: Avoid msi test failures when running in an account with insufficient privileges.
2014-03-05 11:50:22 +01:00
Francois Gouget
65bacd4b69
msi/tests: Avoid source test failures when running in an account with insufficient privileges.
2014-03-05 11:50:02 +01:00
Francois Gouget
badff7c43a
msi/tests: Check that we have enough privileges to run the automation tests.
...
Note that we could have enough privileges to do the InstallProduct
tests, but not enough to clean up the registry after them, thus
causing later runs to fail. In that case we skip the tests.
2014-03-04 19:23:35 +01:00
Hans Leidekker
f525038142
msi: Remove the product reference when a shared component is unregistered.
2014-03-03 17:02:51 +01:00
Hans Leidekker
a547027b01
msi: Correctly [un]register progids when associated class and extensions change state.
2014-02-27 09:32:21 -06:00
Hans Leidekker
28ecbec88d
msi: Get rid of the InstallMe field in MSIMIME.
2014-02-27 09:32:11 -06:00
Hans Leidekker
f0d663fb4d
msi: Use an INSTALLSTATE variable to track install state of classes and extensions.
2014-02-27 09:32:02 -06:00
Vincent Povirk
b4daf7a7f0
msi/tests: Add tests for [un]registering progids.
2014-02-26 11:12:25 -06:00
Hans Leidekker
1ae3bcc94d
msi: Don't install services without an image path.
...
Spotted by Aric Stewart.
2014-02-22 08:41:22 -06:00
Frédéric Delanoy
f21225a41b
msi: Fix typo in a field name.
2014-02-13 17:52:15 +01:00
André Hentschel
3c1ca4e548
msi: Use boolean return value in boolean function.
2014-02-04 11:15:47 +01:00
André Hentschel
2d6685f4ec
msi: Check return value from MSIREG_OpenInstallProps (Coverity).
2014-01-06 17:19:43 +01:00
Frédéric Delanoy
a06363669f
msi/tests: Use BOOL type where appropriate.
2014-01-06 17:15:14 +01:00
Hans Leidekker
48908c130c
msi: Remove the unused CurrentlyScripting field from MSISCRIPT.
2014-01-03 17:00:12 +01:00
Hans Leidekker
fcb924c144
msi: Fall back to the global temporary directory when the TempFolder property resolves to a non-existing directory.
2014-01-03 17:00:08 +01:00
Hans Leidekker
41d2b53c5b
msi: Always derive the SourceDir property from the database path.
2014-01-03 17:00:02 +01:00
Alexandre Julliard
99ef0d6ff0
makefiles: Get rid of the MAKE_TEST_RULES variable.
2014-01-02 12:13:16 +01:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
Alexandre Julliard
d08ff3ff19
makefiles: Use a single variable for all types of idl files.
2013-12-31 18:15:17 +01:00
Frédéric Delanoy
1d36b93f7e
msi/tests: Constify some character strings.
2013-12-27 14:31:52 +01:00
Alexandre Julliard
566d3418af
makedep: Add a separate pragma flag for typelibs that need registration.
2013-12-26 13:32:49 +01:00
Hans Leidekker
f222582af6
msi: Don't add text to the scrollable text control twice.
2013-12-19 17:10:26 +01:00
Frédéric Delanoy
1983448942
msi: Constify a character string.
2013-12-18 11:34:53 +01:00
Alexandre Julliard
ca41acc1f9
makefiles: Automatically update the IDL_H_SRCS variable.
2013-12-15 10:23:06 +01:00
Alexandre Julliard
4f3d71cef3
makefiles: Get rid of the no longer used PO_SRCS variables.
2013-12-15 10:23:04 +01:00
Frédéric Delanoy
5ba7f79bad
Assorted spelling fixes.
2013-12-03 19:41:53 +01:00
Hans Leidekker
3271b98263
msi: Fix handling of empty mask edit templates.
2013-12-02 12:12:39 +01:00
Frédéric Delanoy
57d7f74d34
Assorted spelling fixes.
2013-11-21 19:44:46 +01:00
Qian Hong
9612ed1ba6
msi: Get extension name by strrchrW instead of strchrW.
2013-11-13 18:31:36 +01:00
Alexandre Julliard
5756ee09f3
makefiles: Add makedep pragmas for rc files that contain translations.
2013-11-05 20:38:19 +01:00
Alexandre Julliard
c7803b885b
makefiles: Add makedep pragmas for registration idl files.
2013-11-05 20:38:18 +01:00
Alexandre Julliard
f8421142e7
makefiles: Add makedep pragmas for typelib idl files.
2013-11-05 20:38:18 +01:00
Alexandre Julliard
7960e02b17
makefiles: Add makedep pragmas for identifier idl files.
2013-11-05 20:38:18 +01:00
Dmitry Timoshkov
a5b51a766b
msi: Check number of bytes returned by ReadFile.
2013-10-30 15:28:56 +01:00
Frédéric Delanoy
ec1888b7d3
msi/tests: Use BOOL type where appropriate.
2013-10-29 10:22:01 +01:00
Frédéric Delanoy
8793b5fe28
msi: Use BOOL type where appropriate.
2013-10-28 10:40:20 +01:00
Kohei Takahashi
953359c73f
msi: Return -1 on open failure in FDI callbacks.
2013-10-15 19:20:19 +02:00
Hans Leidekker
1d124f8869
msi/tests: Compile with -D__WINESRC__.
2013-10-15 14:28:22 +02:00
Hans Leidekker
0354af649a
msi/tests: Prepare msi.c for the switch to -D__WINESRC__.
2013-10-15 14:28:22 +02:00
Hans Leidekker
07043df793
msi/tests: Prepare suminfo.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
2a70f1bde3
msi/tests: Prepare source.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
c3764ff014
msi/tests: Prepare record.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
8a97d08759
msi/tests: Prepare patch.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
4d236f1942
msi/tests: Prepare package.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
e243979c4f
msi/tests: Prepare install.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
569d04cd7b
msi/tests: Prepare format.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
f1498d7736
msi/tests: Prepare db.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
ae5c7c2a18
msi/tests: Prepare automation.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Hans Leidekker
0e8b5ac54a
msi/tests: Prepare action.c for the switch to -D__WINESRC__.
2013-10-15 14:28:21 +02:00
Frédéric Delanoy
e21abfe07a
msi/tests: Use BOOL type where appropriate.
2013-10-08 09:09:18 +02:00
Marcus Meissner
52c9b9f2b3
msi: Fixed a memory leak in an error case (Coverity).
2013-10-07 13:32:07 +02:00
Michael Stefaniuc
0e681027a2
tests: Compile the tests by default with -D__WINESRC__.
2013-10-02 11:04:02 +02:00
Francois Gouget
7c146b8aa0
msi: Make some dialog_xxx() functions static.
2013-09-13 10:57:45 +02:00
Alexandre Julliard
3f98185fb8
msi: Use bison directives instead of defines to specify extra lexer parameters.
2013-08-01 12:00:04 +02:00
Hans Leidekker
1257db2109
msi: Fix integer conversion in get_table_value_from_record.
2013-07-30 14:43:34 +02:00
Hans Leidekker
fdf8ab11d9
msi: Format text set by means of a control event.
2013-07-27 11:56:13 -05:00
Hans Leidekker
4759dcc3c1
msi: Subscribe to all control events instead of just the first.
2013-07-27 11:56:08 -05:00
Hans Leidekker
ec7650908a
msi: Merge events.c into dialog.c.
2013-07-27 11:56:01 -05:00
Hans Leidekker
3169db2b54
msi: Add support for the hyperlink control.
2013-07-27 11:55:27 -05:00
Hans Leidekker
7974b12ab1
msi: Restrict the match on files from cabinets to the disk ID.
2013-06-20 21:07:56 +02:00
Hans Leidekker
407584fd3e
msi/tests: Avoid test failures caused by broken MsiGetFileVersionA.
2013-06-18 20:33:42 +02:00
Hans Leidekker
edee379d81
msi/tests: Move some more tests and remove a useless test.
2013-06-11 18:07:44 +02:00
Hans Leidekker
b82a5ab27a
msi/tests: Move some tests around to avoid timeouts on the testbot.
2013-06-10 19:30:54 +02:00
Daniel Jelinski
a2307a3339
msi: Update LastSequence for empty media as well.
2013-06-10 11:51:03 +02:00
Hans Leidekker
b64fabf39e
msi: Don't defer custom actions in the UI sequence if they match the currently running script.
2013-06-03 21:11:51 +02:00
Hans Leidekker
1be1b8433a
msi: Remove an unused parameter from action_type_matches_script.
2013-05-29 18:12:05 +02:00
Hans Leidekker
74aa47fa8e
msi: The UI sequence exists if there are runnable actions in the InstallUISequence table.
2013-05-29 18:12:01 +02:00
Dmitry Timoshkov
30fc34b881
msi: Fix memory leak.
2013-05-21 12:06:26 +02:00
Daniel Jelinski
4b4bd0201c
msi: Remove trailing spaces from command line property name.
2013-05-20 21:15:38 +02:00
Alexandre Julliard
d578d0d6c3
msi: Don't bother to unregister classes at process exit.
2013-05-14 11:33:19 +02:00
Hans Leidekker
10975967df
msi: Set the PrimaryVolumePath and PrimaryVolumeSpaceAvailable properties.
2013-05-09 19:24:16 +02:00
Hans Leidekker
b98ef8f087
msi: Treat an empty install location as missing.
2013-05-07 17:20:46 +02:00
Daniel Jelinski
ce6a037abc
msi: Fix ComputerName property.
2013-05-03 21:49:33 +02:00
Hans Leidekker
8328562e4c
msi: Assume a transform is applicable if it doesn't specify any products.
2013-05-03 21:39:22 +02:00
Francois Gouget
d5fc4ce772
msi/tests: Add a trailing '\n' to an ok() call and fix a typo.
2013-05-02 18:52:14 +02:00
Hans Leidekker
1ed6bc2e02
msi: Properly map script function return values to MSI errors.
2013-05-02 18:51:58 +02:00
Christian Costa
7129293b9a
msi: Use next cabinet from the media table instead of failing when there is a mismatch with continuous cabinet.
2013-05-01 19:30:28 +02:00
Christian Costa
e249b93092
msi: Add tests to show that only msi cab filename is taken in case of mismatch with the one given by previous cab.
2013-05-01 19:30:24 +02:00
Hans Leidekker
27a1a9a862
msi: Fix one more occurrence of overwriting verstr in set_installer_properties.
2013-04-17 16:31:05 +02:00
Hans Leidekker
ca025a525d
msi: Don't overwrite verstr in set_installer_properties.
2013-04-15 15:16:52 +02:00
Nikolay Sivov
58bbe5ac4c
msi: Free records on error paths (Coverity).
2013-04-01 12:32:37 +02:00
Alexandre Julliard
33aa647e64
msi: Avoid intermediate variables when calling create_record.
2013-03-13 16:27:50 +01:00
Hans Leidekker
b36a26d65a
msi: Don't attempt to patch files from disabled components.
2013-02-27 19:23:14 +01:00
Hans Leidekker
aeb7d70ffd
msi: Handle more than one patch per file.
2013-02-27 19:23:13 +01:00
Andrew Talbot
40f3a9fa59
msi: Avoid signed-unsigned integer comparisons.
2013-02-18 10:33:17 +01:00
Hans Leidekker
bfe5e58d3a
msi: Don't remove products if msidbUpgradeAttributesOnlyDetect is set.
2013-02-15 16:56:19 +01:00
Hans Leidekker
9779c4b5ea
msi/tests: Move a couple of tests from install.c to msi.c.
2013-02-13 16:13:54 +01:00
Frédéric Delanoy
72989b5b03
msi: Fix memory leak (coverity).
2013-02-06 10:11:32 +01:00
Hans Leidekker
07be9f0585
msi: Improve parsing of the supported platforms string.
2013-01-31 16:32:50 +01:00
Hans Leidekker
d4e9b2cd0f
msi: Fix the return value of MsiGetFileVersion for some corner cases.
2013-01-31 16:32:47 +01:00
Hans Leidekker
cafbad3feb
msi: Don't fail if the directory already exists in MsiCreateAndVerifyInstallerDirectory.
2013-01-31 16:32:35 +01:00
Hans Leidekker
166a7e993c
msi: Set _BrowseProperty to INSTALLDIR.
2013-01-30 17:19:39 +01:00
Hans Leidekker
8df6708af4
msi: Avoid a crash in msi_dialog_handle_event.
2013-01-30 17:19:37 +01:00
Hans Leidekker
b637d4ca94
msi: Remove const from integer parameters.
2013-01-21 16:28:13 +01:00
Hans Leidekker
5b642da8cb
msi: Execute concurrent installers in a separate process.
2013-01-21 16:27:57 +01:00
Hans Leidekker
a248f4f001
msi: Set the OriginalDatabase property after applying transforms, not before.
2013-01-21 16:27:41 +01:00
Hans Leidekker
5891ce25e5
msi: Implement MsiQueryFeatureStateExA/W.
2013-01-09 17:39:33 +01:00
Hans Leidekker
6488a6a5e4
msi: Extend registry helpers to support opening the features key for a specific user.
2013-01-09 17:39:32 +01:00
Hans Leidekker
61db36556a
msi: Fix a test failure on Windows 8 and conform to the more recent behavior.
2012-12-19 14:38:58 +01:00
Daniel Jelinski
bd59df8ddd
msi: Do not convert MaskedEdit contents to uppercase.
2012-12-14 11:57:11 +01:00
Michael Stefaniuc
62029ff586
msi: Use FIELD_OFFSET for the size of structs with a varlength array.
2012-12-13 18:38:47 +01:00
Hans Leidekker
c66b78a810
msi: Don't set the Preselected property for a full reinstall.
2012-12-11 20:45:42 +01:00
Nikolay Sivov
af5e73572a
msi: Fix a stream data leak on error (Coverity).
2012-12-10 11:24:25 +01:00
Andrew Talbot
b1d4793344
msi: Remove unused variables.
2012-11-22 11:55:09 +01:00
Frédéric Delanoy
fcbc5cc5bb
msi: Fix a couple of leaks (coverity).
2012-11-20 13:32:49 +01:00
Hans Leidekker
ed4ce217d3
msi: Don't set the REINSTALL property if the product will be patched.
2012-11-19 16:35:36 +01:00
Frédéric Delanoy
098b3c7294
msi: Fix leaks in ITERATE_InstallService (coverity).
2012-11-16 19:27:23 +01:00
Frédéric Delanoy
cac26d47a0
msi: Fix leaks in stop_service_dependents (coverity).
2012-11-16 19:26:50 +01:00
Nikolay Sivov
3b0179cbde
msi: Remove unnecessary casts and argument from script site creation helper.
2012-11-15 12:20:28 +01:00
Nikolay Sivov
194c30d11f
msi: Make it clear where script type mask comes from.
2012-11-15 12:19:58 +01:00
Nikolay Sivov
eebde117ca
msi: COM cleanup for IActiveScriptSite.
2012-11-15 12:19:52 +01:00
Nikolay Sivov
e87c3b4b00
msi: Store object function pointers with type id.
2012-11-14 19:22:00 +01:00
Nikolay Sivov
e726b54c87
msi: Cache ITypeInfo instances for automation objects instead of reloading every time.
2012-11-14 19:19:36 +01:00
Michael Stefaniuc
dad2967943
msi: Don't over-allocate memory for a MSISELECTVIEW.
2012-11-12 13:17:00 +01:00
Michael Stefaniuc
51013ad278
msi: Use FIELD_OFFSET to calculate the size of structs with variable length array.
2012-11-09 17:10:37 +01:00
Hans Leidekker
9c431b6737
msi: Avoid a string copy when comparing SQL keywords.
2012-11-09 17:10:15 +01:00
Hans Leidekker
e15121771c
msi: Fix use of uninitialized variables.
2012-11-09 17:09:02 +01:00
Hans Leidekker
b036ee6309
msi: Register dlls in a separate process.
2012-11-07 18:12:10 +01:00
Hans Leidekker
e2900c23c7
msi: Make sure either the REINSTALL or the REMOVE property is set when the product is already installed.
2012-11-07 18:12:09 +01:00
Hans Leidekker
26299647f7
msi: Remove a component regardless of its install state, unless it's a permanent component.
2012-11-07 18:12:09 +01:00
Hans Leidekker
462ec1ba43
msi: Return correct length for the empty string from deformat_string.
2012-11-07 18:12:08 +01:00
Frédéric Delanoy
85bf1082ce
msi: Fix some leaks (coverity).
2012-11-07 13:56:03 +01:00
Hans Leidekker
cfadbddcaf
msi: Avoid a crash when target paths have not yet been resolved.
2012-11-06 20:00:27 +01:00
Frédéric Delanoy
84541cc5e3
msi: Fix a leak (coverity).
2012-11-05 17:44:19 +01:00
Hans Leidekker
7d3f903db1
msi: Fix handling of REG_MULTI_SZ values in the WriteRegistryValues action.
2012-11-05 17:44:18 +01:00
Hans Leidekker
570322069c
msi: Preserve strings with embedded nulls in the record formatting implementation.
2012-11-05 17:44:18 +01:00
Hans Leidekker
8d21f998c3
msi: Fix handling of strings with embedded nulls in msi_addstring.
2012-11-05 17:44:17 +01:00
Hans Leidekker
31ea3f44dd
msi: Return length for the empty string in msi_string_lookup.
2012-11-02 19:47:30 +01:00
Hans Leidekker
af08a2f6ba
msi: Pass string length to msi_set_property in ACTION_CustomAction.
2012-10-29 14:41:55 +01:00
Hans Leidekker
52a87c9054
msi: Add a length parameter to msi_strcpy_to_awstring and use it where appropriate.
2012-10-29 14:41:49 +01:00
Hans Leidekker
2a31a3c057
msi: Don't create a copy of deferred custom action data.
2012-10-29 14:41:44 +01:00
Hans Leidekker
929d234072
msi: Return length instead of size from deformat_string.
2012-10-29 14:41:41 +01:00
Hans Leidekker
0f1d3474a8
msi: Add a length parameter to msi_set_property and use it where appropriate.
2012-10-29 14:41:36 +01:00
Hans Leidekker
a7ff2818fe
msi: Preserve strings with embedded nulls when copying from a record to the string table.
2012-10-29 14:41:21 +01:00
Hans Leidekker
9588deb54c
msi: Preserve strings with embedded nulls when copying from the string table to a record.
2012-10-29 14:41:16 +01:00
Hans Leidekker
32aed60786
msi: Preserve strings with embedded nulls in the record implementation.
2012-10-29 14:41:04 +01:00
Hans Leidekker
8d28cc0ac7
msi: Get rid of MSI_RecordSetStringA.
2012-10-29 14:40:55 +01:00
Hans Leidekker
9aa23c6c77
msi: Store string length in the record structure.
2012-10-29 14:40:46 +01:00
Hans Leidekker
6950ac1d1c
msi: Add support for storing strings with embedded nulls in the string table.
2012-10-29 14:40:40 +01:00
Hans Leidekker
652863f4d5
msi: Add more tests for embedded nulls in string property values.
2012-10-29 14:40:31 +01:00
Hans Leidekker
a1c4d2c977
msi: Add a test for embedded nulls in string property values.
2012-10-29 14:40:18 +01:00
André Hentschel
1e361aa8cb
msi/tests: Make multiline macros blocks (coverity).
2012-10-24 11:33:00 +02:00
Jacek Caban
3b9a13e94c
msi: Make script Session object visible by name.
2012-09-18 14:48:24 +02:00
Jacek Caban
645ce64196
msi: Choose the right IActiveScriptParse* interface based on process type.
2012-09-18 14:48:19 +02:00
Hans Leidekker
dd8f54a49f
msi: Don't reinstall components shared with other products.
2012-09-13 13:56:39 +02:00
Hans Leidekker
1ee3be6e80
msi: Only remove a component if the number of clients drops to zero.
2012-09-11 18:07:29 +02:00
Marcus Meissner
b9550ad352
msi: Move free after last usage (Coverity).
2012-09-06 18:23:40 +02:00
Jacek Caban
e679471885
Always define WIDL_C_INLINE_WRAPPERS.
2012-08-28 14:41:13 +02:00
Michael Stefaniuc
5974e9d120
msi/tests: Avoid a TRUE:FALSE conditional expression.
2012-08-15 12:12:49 +02:00
Hans Leidekker
842525f423
msi: Try the registered install location first when resolving the target directory.
2012-08-13 11:45:15 +02:00
Hans Leidekker
b7cefc9997
msi: Avoid an out of bounds access in msi_build_directory_name.
2012-08-13 11:45:11 +02:00
Hans Leidekker
f180de40dd
msi: Implement the RemoveExistingProducts standard action.
2012-07-31 18:01:54 +02:00
Vincent Povirk
b8812afd33
msi: Stub Migrate10CachedPackagesW.
2012-07-31 10:52:53 +02:00
Hans Leidekker
6a588baaf7
msi: Use inline wrappers for calling COM methods.
2012-07-27 17:05:32 +02:00
Hans Leidekker
108d5927d0
msi: Use the right interface to call 32-bit and 64-bit custom action scripts.
2012-07-27 17:05:32 +02:00
Detlef Riekenberg
a7e1b7c6ea
msi/tests: Use always static binding for GetTokenInformation.
2012-07-27 17:05:20 +02:00
Hans Leidekker
cbd83d0307
msi/tests: Mark some test results as broken.
2012-07-16 19:34:40 +02:00
Hans Leidekker
32fa9db888
msi: Don't hard-code the ServicePackLevel property.
2012-07-09 15:06:42 -04:00
Hans Leidekker
f55ee1a212
msi: Don't crash if no working directory is specified for custom action type 34.
2012-07-09 15:06:35 -04:00
Francois Gouget
7f0cfac5cc
msi/tests: Get rid of unneeded function typedefs.
2012-06-15 18:35:37 +02:00
Hans Leidekker
a17ca16495
msi: Keep assembly caches loaded until the package is destroyed.
2012-06-12 10:22:24 +02:00
Hans Leidekker
3480ccbbb4
msi: Always load mscoree.dll from the system directory.
2012-06-12 10:22:15 +02:00
Hans Leidekker
458f6b7ccd
msi: Don't fail if no .NET runtime is available.
2012-06-12 10:22:04 +02:00
Hans Leidekker
f6f1bfd6fb
msi/tests: Use only uppercase characters for the PID_REVNUMBER property.
2012-06-12 10:21:55 +02:00
Hans Leidekker
0ed61000d3
msi: Support registry key names that exceed 255 characters.
2012-06-11 21:03:48 +02:00
Hans Leidekker
fc2c8a215f
msi: Fail if a registry key cannot be created.
2012-06-11 21:03:48 +02:00
Hans Leidekker
fd0c2dabdf
msi: Ignore the value if a registry value name is special.
2012-06-11 21:03:47 +02:00
Hans Leidekker
f0ea60049c
msi: Add support for 64-bit registry components.
2012-06-11 21:03:47 +02:00
Hans Leidekker
e16bcda486
msi: Don't create empty values for special registry entries.
2012-05-31 12:37:22 +02:00
Hans Leidekker
c959e38625
msi: Don't terminate the string in msi_id2stringA.
...
This makes sure that the last string can be fully written when saving the
string table.
2012-05-31 12:37:22 +02:00
Hans Leidekker
35b9594244
msi: Add support for version 4.0 of the .NET runtime.
2012-05-17 17:21:42 +02:00
Hans Leidekker
d6105eaa1f
msi: Use the correct function pointer in msi_init_assembly_caches.
2012-05-17 17:21:28 +02:00
Hans Leidekker
11daa6aad5
msi: Break out of the loop as soon as the assembly is detected in msi_load_assembly.
2012-05-17 17:21:25 +02:00
Michael Stefaniuc
49add07795
msi/tests: Test the correct return values.
2012-05-17 10:18:11 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
Hans Leidekker
4b32c09376
msi: Add support for the ActionInfo progress message subtype.
2012-05-15 16:26:38 +02:00
Hans Leidekker
6c7d0993f0
msi: Add support for the ProgressAddition progress message subtype.
2012-05-15 16:26:37 +02:00
Hans Leidekker
022915f75b
msi: Don't hide failure of script custom actions.
2012-05-15 16:26:37 +02:00
Hans Leidekker
32c7a52f5c
msi: Resolve the target path for the ODBC driver file if necessary.
2012-05-08 16:21:40 +02:00
Alexandre Julliard
720a37d778
msi/tests: Skip MsiEnumProductsEx tests if not supported.
2012-05-03 23:31:43 +02:00
Francois Gouget
1bf438ab29
msi: Tweak msiexec's usage message.
2012-05-03 11:51:38 +02:00
Hans Leidekker
9700e9c7a6
msi: Fix a couple of DispGetParam calls.
2012-05-01 14:50:03 +02:00
Hans Leidekker
c3e3c81bfb
msi: Add the Session object as a global member to custom action scripts.
2012-05-01 14:49:58 +02:00
Hans Leidekker
52738e4f93
msi: Remove a workaround for missing Windows Script interfaces.
2012-05-01 14:49:52 +02:00
Hans Leidekker
605e0b7b41
msi: Add support for uninstalling global assemblies.
2012-04-30 11:02:28 +02:00
Hans Leidekker
89e95aa92c
msi: Avoid a crash in get_registered_local_package.
2012-04-26 19:26:41 +02:00
Hans Leidekker
fde66de6a5
msi: Don't free cached tables in MsiDatabaseCommit.
2012-04-26 19:26:37 +02:00
Hans Leidekker
c8bb335990
msi: Check supported languages in the AppSearch action.
2012-04-23 17:55:28 +02:00
Hans Leidekker
52f3d5bead
msi: Remove child folders first in the RemoveFolders action.
2012-04-23 17:55:21 +02:00
Hans Leidekker
2e5bf9ca06
msi: Dynamically allocate the path buffer in MsiQueryComponentStateW.
2012-04-23 17:55:18 +02:00
Hans Leidekker
cf1cb30dfa
msi: Initialize hkey in msi_comp_find_prod_key.
2012-04-23 17:55:14 +02:00
Hans Leidekker
f1af03fa16
msi: Reduce the indentation level in ACTION_GetComponentInstallStates.
2012-04-23 17:55:10 +02:00
Francois Gouget
f5a5cc067a
msi: Make create_record() static.
2012-04-20 12:00:33 +02:00
Hans Leidekker
a7137ef035
msi: Remove an unneeded assignment.
2012-04-20 11:59:43 +02:00
Hans Leidekker
2b9be70975
msi/tests: Fix some leaks.
2012-04-20 11:59:39 +02:00
Hans Leidekker
2e51464e4d
msi/tests: Add a test for MsiEnumProductsEx.
2012-04-20 11:59:35 +02:00
Hans Leidekker
fc73c9db0a
msi: Fix install state detection for registry components.
2012-04-20 11:59:26 +02:00
Robert van Herk
f87c4a36dd
msi: Fixed MsiGetFileHashW for empty files.
2012-04-06 20:40:59 +02:00
Hans Leidekker
dd205230a0
msi: Keep the UI level fixed during the lifetime of a package.
2012-04-05 17:53:20 +02:00
Hans Leidekker
350449fc43
msi: Suspend the installation if an action sets MSIRUNMODE_REBOOTNOW.
2012-04-02 13:30:41 +02:00
Hans Leidekker
15ee85dee8
msi: Implement MsiGet/SetMode(MSIRUNMODE_REBOOTNOW).
2012-04-02 13:30:36 +02:00
Hans Leidekker
a6b3d77021
msi: Use the state parameter passed to MsiSetMode.
2012-04-02 13:30:28 +02:00
Hans Leidekker
89c80c41ea
msi: Rename the need_reboot flag to need_reboot_at_end.
2012-04-02 13:30:24 +02:00
Hans Leidekker
f01cd3a36d
msi/tests: Add tests for MsiEnumComponents and MsiEnumComponentsEx.
2012-04-02 12:34:38 +02:00
Hans Leidekker
25b7228274
msi: Reimplement MsiEnumComponents on top of MsiEnumComponentsEx.
2012-04-02 12:34:28 +02:00