Commit graph

1322 commits

Author SHA1 Message Date
Misha Koshelev
d1c4588625 msi: Merge OLE automation conformance tests. 2007-05-01 11:49:29 +02:00
Misha Koshelev
49bb20cf35 msi: Add OLE automation conformance test. 2007-04-30 13:57:50 +02:00
Francois Gouget
4017334ed4 msi/tests: Add missing '\n' to ok() call. 2007-04-30 12:34:58 +02:00
Marcus Meissner
ff40f3d2d3 msi: Do not mark the tables const. 2007-04-27 11:13:40 +02:00
Hans Leidekker
9eefc04f6b msi: Add a stub implementation for MsiEnumProductsEx{A, W}. 2007-04-26 14:24:18 +02:00
James Hawkins
da55285acb msi: Implement special handling for the _Streams table. 2007-04-25 12:44:37 +02:00
Rob Shearman
220f93db61 msi: Fix an off-by-one error when calculating the path and filename for the action data in the SelfRegModules action.
The backslash is in p[0], not p[1].
2007-04-25 11:49:34 +02:00
Rob Shearman
22cd120d5d msi: Create the _Property table as a temporary table so that the properties aren't saved to the .msi file. 2007-04-25 11:49:29 +02:00
Rob Shearman
3323303e09 msi: Set rec to NULL after calling msiobj_release on it in msi_create_table so that we don't call msiobj_release on it again. 2007-04-25 11:49:26 +02:00
Rob Shearman
e474304160 msi: Add a non-persistent string instead of a persistent one if the table or row is non-persistent. 2007-04-24 12:25:41 +02:00
Rob Shearman
697d820eee msi: All columns being temporary means the table is non-persistent.
The HOLD keyword just means that the non-persistent data in the table 
should be kept around, not that the table is temporary.
2007-04-24 12:25:36 +02:00
Rob Shearman
44f7cb8858 msi: Add a persistent flag to tables.
Implement MSI_DatabaseIsTablePersistent.
2007-04-24 12:25:25 +02:00
Rob Shearman
a33cc3d859 msi: Don't add info to the _Columns table for non-persistent tables. 2007-04-24 12:24:59 +02:00
Rob Shearman
23379b3b5c msi: Add support for adding temporary/non-persistent data to tables. 2007-04-24 12:24:48 +02:00
Rob Shearman
d8cd46ac47 msi: The HOLD keyword implies a temporary table, whereas database importing should lead to permanent tables, so remove the HOLD keyword. 2007-04-24 12:23:13 +02:00
Rob Shearman
338568886c msi: Create the table directly in create_table instead of requiring it to be loaded after saving. 2007-04-24 12:23:02 +02:00
Rob Shearman
ba0507a178 msi: Move table creation to table.c. 2007-04-24 12:22:48 +02:00
Rob Shearman
3aa9a25cb3 msi: Store the column info in the MSITABLE structure.
Load the data on view creation for simplicity instead of view execution.
2007-04-24 12:22:14 +02:00
Rob Shearman
94d48238ff msi: Remove the hash table for a column when one of its values is modified since it will now be invalid. 2007-04-24 12:21:40 +02:00
Rob Shearman
e261d602fb msi: Cleanup unneeded string table functions.
Make string table functions that aren't used outside of string.c static.
2007-04-24 12:21:33 +02:00
Rob Shearman
37b11baaa3 msi: Move string loading and saving to string.c. 2007-04-24 12:20:19 +02:00
Rob Shearman
2e3289ca6c msi: Add support for non-persistent strings.
Store the loaded refcount in the string table.
2007-04-24 12:18:04 +02:00
James Hawkins
7d3162e6be msi: Abstract MSI_RecordSetStream. 2007-04-23 16:18:13 +02:00
James Hawkins
2b4bf44b79 msi: Add an internal MSI_ViewModify. 2007-04-23 16:18:03 +02:00
Hans Leidekker
1d19c2b72f msi: Install data sources in the InstallODBC custom action. 2007-04-23 14:07:18 +02:00
Hans Leidekker
33c025b7f2 msi: Install translators in the InstallODBC custom action. 2007-04-23 14:06:47 +02:00
James Hawkins
b4bb6e5b5d msi: Add the _Property table back, with tests. 2007-04-23 14:03:51 +02:00
James Hawkins
d677bd7f3b msi: Return MSICONDITION_NONE in MsiDatabaseIsTablePersistent if the table doesn't exist. 2007-04-23 14:00:24 +02:00
Alban Browaeys
7aa3917823 msi: Move msi_free(msiFilePath) to enable ERR message to use it before it is freed. 2007-04-16 13:20:43 +02:00
James Hawkins
98eafa870c msi: Add handling for the concurrent install custom action. 2007-04-16 12:11:08 +02:00
James Hawkins
6da8041d47 msi: Run the InstallExecute sequence if the InstallUISequnce table is empty. 2007-04-16 12:10:03 +02:00
James Hawkins
06df9f790d msi: Generalize the msi_custom_action_info struct so other custom actions can use it. 2007-04-16 12:09:14 +02:00
James Hawkins
4cc48b7710 msi: Add tests for the concurrent installation custom action. 2007-04-16 12:08:52 +02:00
Rob Shearman
1b0b5f5699 msi: Provide UI action data for uncompressed files, not just compressed ones. 2007-04-13 11:42:46 +02:00
Aric Stewart
b46ab0b8cb msi: Do not crash in MsiGetUserInfo if org, user or serial are not present, instead return USERINFOSTATE_ABSENT. 2007-04-12 16:19:24 +02:00
James Hawkins
7ef8428b5e msi: Reset the is_extracted flag when every cabinet is loaded. 2007-04-12 16:18:08 +02:00
Aric Stewart
d54900b8bc msi: Register fonts with full target paths as applications can and will install fonts to places other than the windows/fonts directory. 2007-04-11 11:20:52 +02:00
Rob Shearman
3fbe9db433 msi: Don't wait on closed handles in ACTION_FinishCustomActions.
The handle will be closed by free_custom_action_data, so duplicate the 
handle before calling it.
2007-04-04 12:39:14 +02:00
James Hawkins
8cedb218c3 msi: Load the folder property if available and requested. 2007-03-29 21:01:42 +02:00
Francois Gouget
d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Andrew Talbot
efc988e1c8 msi: Replace inline static with static inline. 2007-03-23 12:29:19 +01:00
Francois Gouget
7b0cde8f84 Assorted spelling fixes. 2007-03-06 21:51:35 +01:00
Andrew Talbot
7a9b2183d4 msi: Replace const pointer parameters with correct pointers to const. 2007-03-06 12:10:31 +01:00
Rob Shearman
77f6bc4f8d msi: Set the PackageCode property based on the "revision number" data in the summary information.
Add a test to show that PackageCode is set by MSI.
2007-03-05 16:43:26 +01:00
Rob Shearman
e2972af436 msi: Rewrite the second loop in ACTION_FinishCustomActions so that it always terminates.
Create an array of handles to wait on so that we can wait without
holding a critical section.
2007-03-05 16:43:26 +01:00
Rob Shearman
95f38b75fb msi: Set the Date, Time and VersionDatabase properties.
Add tests for these properties.
Update the todo list of properties to set.
2007-03-05 16:43:26 +01:00
Paul Vriens
6efffc3829 msi/tests: Properly cleanup after each test. 2007-03-05 12:05:59 +01:00
James Hawkins
ba40c463d7 msi: Overwrite an existing read-only file when copying the install file. 2007-02-26 13:57:43 +01:00
James Hawkins
a40d687133 msi: Add tests for using markers in SELECT clauses. 2007-02-26 13:56:24 +01:00
James Hawkins
d4a324940b msi: Check for a NULL text entry, as it can be blank in the VolumeCostList control. 2007-02-26 13:56:21 +01:00