Commit Graph

2672 Commits

Author SHA1 Message Date
James Hawkins 554e1318c0 msi: Refactor Installer.OpenProduct and Installer.OpenDatabase into respective functions. 2009-12-11 12:16:27 +01:00
James Hawkins b33d47e773 msi: Refactor the Installer.OpenPackage method into InstallerImpl_OpenPackage. 2009-12-11 12:16:26 +01:00
James Hawkins b73389b6bf msi: Refactor the Installer.CreateRecord method into InstallerImpl_CreateRecord. 2009-12-11 12:16:26 +01:00
James Hawkins ae58e29e5e msi: Stub out a few more Installer object methods. 2009-12-11 12:16:26 +01:00
James Hawkins 9ab7d9e21a msi: Close the original record before copying new data into it. 2009-12-11 12:16:26 +01:00
James Hawkins a44b653d53 msi: Fix a handle leak in the record tests. 2009-12-11 12:16:26 +01:00
James Hawkins d90aca35c4 msi: Add a NULL terminator to file->dest after reallocation. 2009-12-08 12:36:51 +01:00
James Hawkins b13803ea40 msi: Free the column info data when updating the table column info. 2009-12-08 12:36:36 +01:00
James Hawkins c20902314b msi: Make sure to free the extra row data when deleting a row. 2009-12-08 12:36:28 +01:00
Hans Leidekker 3840de5b1e msi/tests: Loosen check on kernel32 language version. 2009-12-07 14:18:29 +01:00
James Hawkins 25ab693008 msi: The second parameter to Installer.OpenPackage is optional, so set a default value of 0 if the parameter is not provided. 2009-12-07 09:49:06 +01:00
James Hawkins 1ff6c08621 msi: Verify that the first parameter to Installer.OpenPackage is a VT_BSTR.
It seems ugly to open up the parameters in pDispParams, but
DispGetParam will happily convert a VT_EMPTY to a VT_BSTR and not
return an error.
2009-12-07 09:49:06 +01:00
James Hawkins 4687604356 msi: It's possible to send in more than two parameters to Installer.OpenPackage, but sending in zero parameters should return DISP_E_TYPEMISMATCH. 2009-12-07 09:49:06 +01:00
James Hawkins b614052895 msi: Add more tests for the Installer.OpenPackage method.
The following series fixes a few leaks reported by valgrind.  We were
leaking exception info caused by Installer.OpenPackage failing when we
didn't expected it.
2009-12-07 09:49:06 +01:00
James Hawkins 7d3e664312 msi: MsiSetMode returns a UINT system error code, not a BOOL. 2009-12-04 14:34:57 +01:00
James Hawkins 6b8b82ef13 msi: ExpandEnvironmentStringsW returns the required size in characters, so multiply the required size by sizeof(WCHAR) when allocating the buffer. 2009-12-03 10:22:40 +01:00
Hans Leidekker fd8620f6c0 msi/tests: Don't check more bytes than written to the file. 2009-12-01 13:16:30 +01:00
Nathan Gallaher abb23d8bd5 msi: Support _Streams, _Storages tablename prefixes in SELECT. 2009-11-24 15:54:06 +01:00
Nathan Gallaher f7ba4b2ec0 msi/tests: Test for SELECT table.column FROM table.
Make sure that mixing table columns returns the expected
data. eg:  SELECT t1.action, t2.action FROM t1, t2
should return distinct data.
2009-11-24 15:54:00 +01:00
Nathan Gallaher 5c56e1f440 msi: Add support for table names in select statements.
Propagate tablename from 'SELECT tablename.column from tablename' queries
into VIEW_find_column(). Previously, the tablename had been dropped.
2009-11-24 15:53:53 +01:00
Michael Martin d28eabda5c msi: Shedule rename operation also for ERROR_USER_MAPPED_FILE. 2009-11-20 14:37:09 +01:00
Hans Leidekker 83e7a1214a msi: Sign extend the value when converting from a small integer. 2009-11-19 11:50:36 +01:00
Piotr Caban 1f7a07ebe3 oleaut32: Ignore milliseconds in VarDateFromUdate implementation. 2009-11-19 11:35:40 +01:00
Hans Leidekker bd4bc16147 msi: Don't set the ALLUSERS property. 2009-11-17 16:05:27 +01:00
Hans Leidekker fd549aa25d msi: Set the LogonUser property. 2009-11-17 16:05:15 +01:00
Hans Leidekker 84ddfd8739 msi: Test more variations of environment string prefixes. 2009-11-13 13:35:58 +01:00
Hans Leidekker e52531ab1d msi: Handle environment strings without a value. 2009-11-13 12:21:46 +01:00
Rob Shearman b960b967c9 msi: Improve stub for MsiGetFeatureCost{A, W} and hook the stub into the VolumeCostList dialog control. 2009-11-09 19:43:23 +01:00
Francois Gouget 97619affe5 msi/tests: Make the handler_xxx() functions static.
Also remove extraneous semi-colons.
2009-11-09 19:40:44 +01:00
Detlef Riekenberg 0839ae88ca msi/tests: MsiSetExternalUIRecord not present before Installer 3.1. 2009-11-05 11:57:21 +01:00
Hans Leidekker 808343fb5b msi: Implement MsiSetExternalUIRecord. 2009-11-03 22:23:08 +01:00
Hans Leidekker 90fa4fe155 msi: Unicode and ANSI global UI handlers are mutually exclusive. 2009-11-03 22:23:01 +01:00
Hans Leidekker 4b5248c9e0 msi: Add support for the Unicode version of the global UI handler. 2009-11-03 22:22:54 +01:00
Dmitry Timoshkov 0513f3c4e6 msi: Add support for msidbControlAttributesProgress95. 2009-10-29 15:48:38 +01:00
Dmitry Timoshkov df8780356b msi: Limit the progress to its maximal value, use MulDiv for better results. 2009-10-29 15:48:27 +01:00
Nate Gallaher 07c321ba73 msi: Test that a query on a join of two tables returns data from the correct table. 2009-10-27 14:01:50 +01:00
Nate Gallaher cc366e1282 msi: Add tablename tracking to VIEW_find_column.
This fixes the bug where multiple columns of the same name, but
different tables are members of a join. Any attempt to refer to these
columns will resolve to the first available column with that name,
irregardless of any tablename modifier.
2009-10-27 14:01:23 +01:00
Hans Leidekker 2eb33f5bcb msi: Avoid accessing uninitialized memory in ACTION_AppSearchReg.
Found by valgrind.
2009-10-27 10:53:56 +01:00
Hans Leidekker 3f70b07870 msi/tests: Fix a couple of user SID string leaks.
Found by valgrind.
2009-10-27 10:53:42 +01:00
Hans Leidekker e58ebbf3e0 msi: Fix calculation of required buffer size in MsiSummaryInfoGetPropertyW. 2009-10-23 12:04:38 +02:00
Hans Leidekker 394a437723 msi/tests: Free the string returned from ConvertSidToStringSid.
Found by valgrind.
2009-10-23 12:04:06 +02:00
Hans Leidekker 483590a3c5 msi/tests: Avoid accessing uninitialized memory.
Found by valgrind.
2009-10-23 12:04:00 +02:00
Hans Leidekker a15e6cbb1a msi: Avoid accessing uninitialized memory.
Found by valgrind.
2009-10-21 17:05:54 +02:00
Hib Eris 47ec8ab0f3 msi: Remove table_find_insert_idx().
The function table_find_insert_idx() is replaced by the more generic
function find_insert_index().
2009-10-20 15:57:25 +02:00
Hib Eris f6ae2507ef msi: Fix table rows order. 2009-10-20 15:57:09 +02:00
Hib Eris efacff81d6 msi: Add function get_table_value_from_record. 2009-10-20 15:57:01 +02:00
Hib Eris 9dddb94b99 msi: Fix merging string type checks. 2009-10-20 15:55:43 +02:00
Hib Eris 925fb3b408 msi/tests: Add tests for rows order. 2009-10-20 15:07:07 +02:00
Hib Eris 8d49633275 msi/tests: Add test for merging string types. 2009-10-20 15:03:39 +02:00
Hib Eris a3214c978d msi: Fix a failure with merging existing tables. 2009-10-20 15:03:33 +02:00
Hib Eris 6aad5cb307 msi/tests: Add tests for merging existing tables. 2009-10-20 15:03:24 +02:00
Hans Leidekker afcd2c5358 msi: Open the database read/write in MSI_OpenPackageW.
Fixes transforms that add binary streams.
2009-10-20 14:40:01 +02:00
Hans Leidekker 8dd3d389b0 msi: Create the local copy before opening the database. 2009-10-20 14:39:55 +02:00
Hans Leidekker 33d9f37f4a msi: Always create a temporary copy of the package. 2009-10-20 14:39:47 +02:00
Hans Leidekker 534f20bc49 msi: Get rid of some redundant initializations. 2009-10-19 15:02:42 +02:00
Hans Leidekker b7a81df452 msi: Allocate MSISCRIPT structure at package creation time. 2009-10-19 15:02:36 +02:00
Hans Leidekker a187b43ddd msi: Eliminate the last parameter from ACTION_PerformActionSequence. 2009-10-15 14:17:24 +02:00
Hans Leidekker e3aa2f33d9 msi: Use a function to test the UI level instead of passing a boolean around. 2009-10-15 14:17:18 +02:00
Hans Leidekker 796eed1dc7 msi: Reorder functions to avoid forward declarations. 2009-10-15 14:17:06 +02:00
Hans Leidekker 55b89f4a66 msi: Add some tests for MsiGetTargetPathW. 2009-10-15 14:16:57 +02:00
Hans Leidekker 843382f284 msi: Define common strings only once. 2009-10-15 14:16:50 +02:00
Francois Gouget fe935e8d50 Assorted spelling fixes. 2009-10-08 12:17:31 +02:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Paul Vriens 35df8f2d69 msi/tests: Skip some tests on Win9x/WinMe. 2009-10-02 11:51:23 +02:00
Hans Leidekker 9c8b83ce01 msi: Schedule a rename operation when the file to overwrite is in use. 2009-10-01 12:04:02 +02:00
Michael Stefaniuc f8ec47d5c6 msi/tests: Remove trailing '\'. 2009-09-29 18:08:30 +02:00
Hans Leidekker c0c6daeb5a msi: Test installing over in-use files. 2009-09-29 16:06:23 +02:00
Hans Leidekker 46ac59f988 msi: Don't set the Installed property twice. 2009-09-29 16:06:23 +02:00
Hans Leidekker 2beee126a7 msi: Test the Installed property. 2009-09-29 16:06:22 +02:00
Hans Leidekker 1b7d1d4c87 msi: Respect UI level in custom action type 19. 2009-09-29 16:06:22 +02:00
Hans Leidekker 4086ff6248 msi: Add tests to show that the condition table is ignored when there are overrides. 2009-09-22 16:20:51 +02:00
Hans Leidekker ae3418fdd9 msi: Test last used source property in combination with cabinet storage. 2009-09-22 16:20:48 +02:00
Paul Vriens c6e7558cda msi/tests: Fix some test failures on Vista/W2K8. 2009-09-22 16:15:36 +02:00
Paul Vriens 6867de0714 msi/tests: Skip some tests on Win9x/WinMe. 2009-09-18 08:56:16 -05:00
Hans Leidekker 659768e203 msi: Set or override a user environment string when there is no prefix. 2009-09-16 12:57:33 -05:00
Hans Leidekker 86e08ea4e4 msi: Don't append the cabinet file name in find_published_source. 2009-09-16 12:56:57 -05:00
Hans Leidekker 60d0cf41b3 msi: GetDriveType and GetVolumeInformation require a path terminated by a slash. 2009-09-16 12:56:50 -05:00
Hans Leidekker fc15d6d5ad msi: Downgrade two ERRs to WARNs. 2009-09-16 12:56:44 -05:00
Hans Leidekker 90d283f0eb msi: Improve a trace. 2009-09-16 12:56:38 -05:00
Hans Leidekker 5669e67d48 msi: Set ProductState property. 2009-09-11 16:19:54 +02:00
Hans Leidekker dd1ca6ca5e msi: Ignore CoInitialize failure in ACTION_CreateShortcuts. 2009-09-10 22:32:13 +02:00
Hans Leidekker 3a7c2d005c msi: Open the database read/write when the update count is greater than zero in MsiGetSummaryInformation. 2009-09-10 10:50:28 +02:00
Hans Leidekker 92cd7a8fa0 msi: Add a test to show that creating shortcuts works regardless of COM initialization state. 2009-09-09 16:25:00 +02:00
Alexandre Julliard e98a52e585 msi: Force overwriting of read-only files when extracting a cabinet, with tests. 2009-09-09 12:19:28 +02:00
Hans Leidekker 05e9a1fce8 msi: Add a partial implementation of MsiDetermineApplicablePatchesW. 2009-09-02 14:41:31 +02:00
Hans Leidekker 1169aa9a58 msi: Set REINSTALL property when the product is already installed and the command line is empty. 2009-09-02 14:41:24 +02:00
Ge van Geldorp 167ef04727 msi/tests: Create only a single restore point. 2009-08-28 16:48:27 +02:00
Hans Leidekker eb101df687 msi: Fix column width calculation.
The iTunes 8 installer database has an integer column of size 1 which
takes up two bytes at storage level, so adjust the column size calculation
to account for this difference.
2009-08-04 13:05:45 +02:00
Hans Leidekker 0b60ed8ff1 msi: Fix parsing of integer column width specifiers. 2009-08-04 13:05:30 +02:00
Vladimir Pankratov 04deb6d7d1 msi: Convert the Russian resources to UTF-8. 2009-08-03 14:56:39 +02:00
Alexandre Julliard 2c5bd49297 msi: Build a proper tab chain by walking through the controls list.
Simply changing Z-order as we encounter windows is not sufficient to
ensure correct ordering, we have to rebuild the list from scratch.
2009-07-15 14:22:14 +02:00
Hib Eris ec4edbfd6c msi: Implement ASSIGN mode in MsiViewModify. 2009-07-06 15:25:39 +02:00
Hib Eris eaea537f0f msi/tests: Add tests for MsiViewModify ASSIGN mode. 2009-07-06 15:25:36 +02:00
Frédéric Delanoy e801cae520 msi: Update French translation. 2009-07-03 13:11:24 +02:00
Michael Stefaniuc 5234f1fd0a msi: Build language resource files separately.
Do not include them from an other rc file.
2009-07-02 11:44:15 +02:00
Hans Leidekker 60b7604aa1 msi: Support opening transform databases. 2009-06-30 13:46:39 +02:00
Alexandre Julliard 3271362a26 msi: The dialog units are based on a 12-point font size, despite the documentation. 2009-06-25 12:09:45 +02:00
Hib Eris 5392014e29 msi: Release more msi_custom_action_info when no longer needed. 2009-06-22 13:09:03 +02:00
Hib Eris e86ebd75b0 msi: Release msi_custom_action_info when no longer needed. 2009-06-22 13:08:55 +02:00
Hib Eris 65ac206194 msi: Insert new tables in correct _Tables location. 2009-06-22 13:08:36 +02:00
Hib Eris 19d783d34d msi/tests: Add tests for order of tables. 2009-06-22 13:08:28 +02:00
Aurimas Fišeras a66dc8f981 msi: Add Lithuanian translation. 2009-06-22 11:28:00 +02:00
Paul Vriens 9a1b829923 msi/tests: Fix some test failures on Win95 by using more A-functions. 2009-06-19 13:52:38 +02:00
Paul Vriens 44b53ef35e msi/tests: Fix test (logical || with non-zero constant). 2009-06-19 13:52:26 +02:00
Hans Leidekker e3a7ae8a30 msi: Add some reinstall tests. 2009-06-12 17:33:15 +02:00
Mike Kaplinskiy 9e5d07bb53 msi: Add a test to insert a null primary key temporary row and check its order. 2009-06-11 13:23:25 +02:00
Mike Kaplinskiy 2cc9a710b1 msi: Store temporary rows in the same place as persistent rows, just with a flag. 2009-06-11 13:23:25 +02:00
Hib Eris 8fb7fdd029 msi: Fix a crash when freeing memory. 2009-06-11 11:45:48 +02:00
Paul Vriens 9b6cf22607 msi/tests: Make sure we only create one logfile. 2009-06-09 17:01:13 +02:00
Marcus Meissner 890b5dafb6 msi: Check the correct pointers for allocation failure (Coverity). 2009-06-05 15:19:57 +02:00
Hans Leidekker f9e33e9af6 msi/tests: Ignore case when comparing file names. 2009-06-04 12:18:20 +02:00
Hans Leidekker 761736e6aa msi: Add more tests for MsiGetSourcePath. 2009-06-04 12:18:15 +02:00
Hans Leidekker a0b9315dff msi: Add tests for importing a _SummaryInformation table. 2009-06-04 12:18:09 +02:00
Hans Leidekker d02dbf4492 msi: Initialize some variables. 2009-06-04 12:18:04 +02:00
Hans Leidekker c1670fb353 msi: Don't trace an out parameter. 2009-06-04 12:17:59 +02:00
Hans Leidekker 7d837b9f82 msi: The assembly file version field is optional. 2009-05-29 15:35:59 +02:00
Hans Leidekker 22a277cc2e msi: Fix some memory leaks. 2009-05-28 15:29:09 +02:00
Hans Leidekker a4b76ceee7 msi: Consistently use the parser allocator when parsing a query. 2009-05-28 15:29:02 +02:00
Hans Leidekker 5922de46de msi: Don't duplicate the table name in CREATE_CreateView.
The table name is tracked in the list attached to the parent query object,
which is destroyed after the view object.

This plugs a leak since the duplicated table name was never freed.
2009-05-28 15:28:53 +02:00
Hans Leidekker 2018de00e1 msi: Constify some parameters. 2009-05-28 15:28:45 +02:00
Paul Vriens db355b4903 msi/tests: Remove unused variable. 2009-05-28 12:42:17 +02:00
Paul Vriens 45c00da496 msi/tests: Prevent crash when ConvertSidToStringSidA is not available. 2009-05-27 15:40:30 +02:00
Hib Eris ff5b29e5eb msi: Add support for merging tables that are not in target database. 2009-05-27 12:51:51 +02:00
Hib Eris 97200b0b31 msi/tests: Add test for merging tables that are not in target database. 2009-05-27 12:51:36 +02:00
Hib Eris 987d17dc6f msi: Fix merging tables with string primary keys. 2009-05-27 12:51:31 +02:00
Hib Eris a807e86dd7 msi/tests: Add test for merging tables with string primary keys. 2009-05-27 12:51:22 +02:00
Hib Eris 086fcfc1f4 msi: Initialize a variable. 2009-05-27 12:51:15 +02:00
Hib Eris cad837c999 msi: Add support for importing binary OBJECTS. 2009-05-27 12:51:10 +02:00
Hib Eris e7ebbbe62e msi/tests: Add test for importing binary OBJECTS. 2009-05-26 15:27:27 +02:00
Hib Eris d9568722aa msi: Support transforms with binary OBJECTS. 2009-05-26 15:18:09 +02:00
Hib Eris f6dd90de5e msi: Add support for binary OBJECTS. 2009-05-26 15:18:02 +02:00
Hib Eris 8356484c9f msi/tests: Add tests for binary OBJECTS. 2009-05-26 15:17:52 +02:00
Francois Gouget 623dad0963 msi/tests: Tweak the get_user_sid() functions to simplify their use.
Now the function deals with all errors and win_skips() itself.
2009-05-26 14:10:27 +02:00
Ilya Shpigor 6c64da8b7c msi: Subscribe to SetProgress event on adding progress bar control to dialog. 2009-05-21 16:17:52 +02:00
Francois Gouget d9ffbe4e82 msi/tests: Use win_skip() to skip over unimplemented functionality. 2009-05-19 12:01:20 +02:00
Gerald Pfeifer aea6418ff0 msi: Initialize variable in MSI_ApplyPatchW. 2009-05-14 17:39:29 +02:00
Hans Leidekker 0d8a826ef5 msi: Reject NULL or empty patch package parameter in MsiApplyPatch. 2009-05-06 16:09:55 +02:00
Marcus Meissner 1cfc88a500 msi: Initialize info and patch variables (Coverity 923). 2009-05-05 11:35:22 +02:00
Detlef Riekenberg a31e9a1bfa msi/tests: Run tests again with older msi versions (MsiApplyMultiplePatchesA). 2009-05-05 11:33:52 +02:00
Nicolas Le Cam 2f37672225 msi/tests: Fix MsiApplyMultiplePatches tests on Windows. 2009-05-04 12:51:01 +02:00
Hans Leidekker b4b8bc830f msi: Implement MsiApplyMultiplePatchesA/W. 2009-05-01 16:19:39 +02:00
Hib Eris 0a81fbfa39 msi: Fix LONGCHAR column data type. 2009-04-28 13:10:04 +02:00
Hib Eris 508028ae03 msi/tests: Test type for LONGCHAR columns. 2009-04-28 13:10:03 +02:00
Hib Eris 5e829d1323 msi: Fix SHORT column data type. 2009-04-28 13:10:03 +02:00
Hib Eris 407866186c msi/tests: Test type for INTEGER, SHORT, LONG columns. 2009-04-28 13:10:03 +02:00
Hib Eris 15cb7290ee msi: Fix INT column data type. 2009-04-28 13:10:03 +02:00
Hib Eris fa8f8a3efc msi/tests: Test type for INT column. 2009-04-28 13:10:03 +02:00
Nikolay Sivov 7daf9b6ef5 msi: Fix wrong calling convention. 2009-04-27 13:24:51 +02:00
Nicolas Le Cam 8b348fca27 msi/tests: Fix package test when run on a different drive than C:\. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam b91fc465ff msi: Fix ACTION_AppSearchDr on empty path. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam 34202629c9 msi/tests: Add empty dir test for the DrLocator part of the AppSearch action. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam 03afdb0217 msi: Enfore use of GetFileAttributes return value. 2009-04-23 18:14:25 +02:00
Hans Leidekker 55ad3fdda2 msi: Fix another double free.
parser_alloc() allocates memory and puts it on a list attached the to query object.
EXPR_sval() frees memory allocated via parser_alloc() on error but does not remove
the pointer from the list, which means that when the query destructor is called it
will be freed again.
2009-04-20 17:40:43 +02:00
Hans Leidekker 91ac47b84b msi: Fix a double free.
TABLE_drop() calls TABLE_remove_column() which calls msi_update_table_columns()
which frees column info and possibly returns without reallocating. When that
happens it will be freed again when TABLE_drop() finally calls free_table().
2009-04-20 17:40:38 +02:00
Nicolas Le Cam e00d864a35 msi: Fix buffer length value returned by MSI_RecordGetStringW on null and empty strings. 2009-04-20 17:26:13 +02:00
Nicolas Le Cam edac581d6a msi/tests: Test MsiRecordGetString on null and empty strings. 2009-04-20 17:26:10 +02:00
Detlef Riekenberg a26da7b7a3 msi/tests: Replace lstrcatW with memcpy to fix failures on win95. 2009-04-20 17:20:01 +02:00
Michael Stefaniuc cf6ec333a5 msi/tests: Replace long with LONG. 2009-04-20 14:12:37 +02:00
Michael Stefaniuc f3a1660181 msi: Remove superfluous cast of a MSIHANDLE in a TRACE(). 2009-04-20 14:12:34 +02:00
Hans Leidekker 184474ea66 msi: Support setting summary information by importing a _SummaryInformation table. 2009-04-14 15:20:58 -05:00
Nicolas Le Cam 112bb084f1 msi/tests: Fix test when content indexing is disabled. 2009-04-10 14:43:57 +02:00
Nicolas Le Cam 7b2a44f257 msi/tests: Fix format test when run on root drive directory. 2009-04-10 11:14:21 +02:00
Ge van Geldorp 215fd0b813 msi/tests: Handle running the tests as a domain user. 2009-04-07 14:21:25 +02:00
Hans Leidekker e3b558887d msi: Build a proper source path in MsiConfigureProductExW.
We were passing uninitialized data which would ultimately end up in the
registry.
2009-03-31 12:41:42 +02:00
Hans Leidekker 965698cd28 msi: Don't publish package name as part of product properties.
This value does not exist directly under the product key on Windows.
2009-03-31 12:41:36 +02:00
Detlef Riekenberg 03ff6ba641 msi/tests: Fix a copy & paste typo in a test message. 2009-03-30 17:51:03 +02:00
Detlef Riekenberg 36dbb69b66 msi/tests: Verify path names case insensitively. 2009-03-30 15:09:00 +02:00
Hans Leidekker 4365b34838 msi: Allocate token information buffer dynamically. 2009-03-27 15:51:26 +01:00
Hans Leidekker f0d1d61d3b msi: Add tests for MsiEnumProducts. 2009-03-27 15:51:26 +01:00
Hans Leidekker 9163b0d0a3 msi: Enumerate products from all contexts.
Fix for office 2007 proofing tools installer.
2009-03-27 15:51:26 +01:00
Alexandre Julliard 836d9af1be msi/tests: Avoid size_t in traces. 2009-03-26 14:01:26 +01:00
Michael Stefaniuc 6fa69c3f2b msi: Remove redundant NULL check before msi_free (Smatch). 2009-03-26 11:51:08 +01:00
Hans Leidekker 9c6e6efa32 msi: Detect privately installed assemblies.
Another fix for the office 2007 sp1 installer.
2009-03-25 15:02:45 +01:00
Hans Leidekker c2221f325f msi: Add some tests for MsiQueryFeatureState.
These tests confirm that a feature is reported as advertised if only
one of its components is missing.
2009-03-25 15:02:37 +01:00
Aric Stewart 28bc76b5d3 msi: Verify the existence of fusion.dll before reporting the .Net version.
Fixes an issue with .Net 3.0 where it does not install a new
fusion.dll but does add a key to the registery. The fact that a new
dll is not installed has been verified on windows.
2009-03-25 12:39:27 +01:00
Hans Leidekker 86af876987 msi: Only apply a transform when its language id matches the system language id.
Fix for office 2007 sp1 installer.
2009-03-24 13:32:11 +01:00
Hans Leidekker b8965ee7c9 msi: Don't initialize COM for custom action threads. 2009-03-24 13:31:59 +01:00
Hans Leidekker c844582177 msi: Add stub implementations of MsiSourceListClearAllExA/W. 2009-03-24 13:31:36 +01:00
Hans Leidekker 7590a3f335 msi: Implement MsiReinstallProductA/W. 2009-03-24 13:31:24 +01:00
Hans Leidekker 201e291e5d msi: Add stub implementations of MsiDeterminePatchSequenceA/W. 2009-03-24 13:31:12 +01:00
Michael Stefaniuc 6789fa8544 msi: Add the Romanian translation. 2009-03-24 13:00:02 +01:00
James Hawkins 5e62686a0f msi: Handle a NULL and empty szPackagePath in MsiInstallProduct (Coverity 181). 2009-03-23 15:52:18 +01:00
James Hawkins fb8db0ac13 msi: Don't try to release a NULL record, with tests (Coverity 536). 2009-03-23 15:52:17 +01:00
James Hawkins baf86bd5bb msi: MsiCollectUserInfo cannot be called from a custom action (Coverity 565, 566). 2009-03-23 15:52:17 +01:00
James Hawkins cb958cd773 msi: Test and handle the case where the SourceList key does not exist and the PackageName value does not exist in MsiGetProductInfo. 2009-03-23 15:52:17 +01:00
James Hawkins dc50773c28 msi: Factor out the MsiEnumPatchesEx tests and test the NULL szUserSid and an szUserSid that is different from the current user. 2009-03-23 15:52:17 +01:00
James Hawkins c965d839f9 msi: Allow the enumeration of other users' patches. 2009-03-23 15:52:17 +01:00
James Hawkins f7c615b188 msi: Enumerate the current user's patches if szUserSid is NULL. 2009-03-23 15:52:17 +01:00
James Hawkins 3956bb5b0e msi: Fix a typo (Coverity 910). 2009-03-23 15:52:17 +01:00
Michael Stefaniuc fccdccc378 msi: Update the German translation. 2009-03-23 15:52:17 +01:00
Michael Stefaniuc b4cb8562ae msi: Convert the German translation to UTF8 encoding. 2009-03-23 15:52:17 +01:00
Aric Stewart 39600d9d2e msi: Reorder the condition operators so that longer strings are matched first.
This allows ~<< to be properly matched.
2009-03-23 15:26:02 +01:00
Hans Leidekker ba50d15060 msi: Set concurrency model to multi-threaded for custom action threads.
A custom action in the office 2007 sp1 installer fails right after calling
CoInitializeEx(NULL, COINIT_MULTITHREADED). This is because our code calls
CoInitialize(NULL) first, which sets a different concurrency model, and a
subsequent call with a different model will return RPC_E_CHANGED_MODE.

Ergo, we should set the model to multi-threaded too.
2009-03-13 14:52:48 +01:00
Hans Leidekker 4da865f324 msi: Handle ADVERTISE overrides. 2009-03-13 13:21:07 +01:00
Hans Leidekker 804d66039d msi: Correct spec entry for MsiGetProductInfoA/W. 2009-03-13 13:21:07 +01:00
Paul Vriens 7a8000d4e8 msi/tests: Fix a test for systems with %TEMP% being less than 2 levels deep. 2009-03-12 14:29:56 +01:00
Hans Leidekker 40cfbaf023 msi: Fix handling of REINSTALL overrides.
We were forcing features with a REINSTALL override to be reinstalled
locally, which is only correct if the original install state is local.

This causes problems with the office 2007 sp1 installer, which applies
a REINSTALL override to an advertised feature.
2009-03-12 14:29:56 +01:00
Paul Vriens fca2626768 msi/tests: Fix a test failure on Win95. 2009-03-03 12:36:25 +01:00
James Hawkins 9540d762ad msi: Handle reading from a NULL stream. 2009-03-02 12:06:37 +01:00
James Hawkins 2f1eacfcad msi: Don't treat carriage returns as spaces. 2009-03-02 12:06:30 +01:00
James Hawkins 7f3faffc3b msi: Don't allow nested quotes in SQL queries. 2009-03-02 12:06:24 +01:00
James Hawkins e821f9d724 msi: Add missing calls to MsiViewClose. 2009-03-02 12:06:18 +01:00
James Hawkins 293bdffa29 msi: Use a SQL marker to query the _Property table when fetching a property. 2009-03-02 12:06:10 +01:00
James Hawkins f36e13fd81 msi: Delete the view on error. 2009-03-02 12:06:02 +01:00
James Hawkins 046bcc918c msi: The PATH environment variable can be longer than MAX_PATH, so dynamically allocate strings to deal with that. 2009-03-02 12:05:57 +01:00
James Hawkins 37c5e04010 msi: The _Streams and _Storages table are special and always exist. 2009-03-02 12:05:45 +01:00
James Hawkins c9b3bc1165 msi: Column attributes for temporary string and int columns should be g and j respectively. 2009-03-02 12:05:28 +01:00
James Hawkins c07b554edc msi: Order primary keys to be first in the column list when creating a table. 2009-03-02 12:05:09 +01:00
James Hawkins b3c9875cf7 msi: Correctly order transposed column values in the INSERT query. 2009-03-02 12:04:57 +01:00
Hans Leidekker 148ef5f485 msi: Add reinstall tests.
Based on a patch by Aric Stewart.
2009-02-26 15:13:25 +01:00
James Hawkins b55c031032 msi: Fix a failing test on win9x. 2009-02-26 12:14:19 +01:00
James Hawkins a7d5adc91f msi: Trace the username to help debug test failures on certain machines. 2009-02-26 12:14:13 +01:00
James Hawkins 5735e2fafd msi: Fix a failing test on win9x. 2009-02-26 12:14:08 +01:00
James Hawkins ea28915133 msi: Don't create a temporary table that is not held. 2009-02-26 12:14:01 +01:00
James Hawkins 241933e13c msi: A non-temporary table cannot have a temporary primary key. 2009-02-26 12:13:57 +01:00
James Hawkins 74aa053485 msi: The _Tables and _Columns tables have no persistence attribute. 2009-02-26 12:13:52 +01:00
James Hawkins 2f8c2a8d41 msi: Make sure the view being updated is the same view the record was fetched from. 2009-02-26 12:13:49 +01:00
James Hawkins e872681af7 msi: Set field zero to the name of the table containing the primary keys. 2009-02-26 12:13:44 +01:00
James Hawkins 7d7f14c101 msi: Add tests for field zero of a record. 2009-02-26 12:13:10 +01:00
James Hawkins 60ad75eade msi: Make sure a constant string's quotes match up. 2009-02-26 12:13:02 +01:00
Alexandre Julliard b5ac29a73d msi/tests: Add some tests for MsiEnumPatchesW, fix a few failures on XP. 2009-02-25 16:06:21 +01:00
Alexandre Julliard b4d81f8517 msi: Fix handling of buffer sizes in MsiEnumPatchesA and avoid a redundant call to MsiEnumPatchesW. 2009-02-25 16:06:21 +01:00
Hans Leidekker 18cd216e80 msi: Don't release view object twice in check_assembly_installed. 2009-02-19 16:17:17 +01:00
Hans Leidekker 43094e4a3e msi: Make comparison of assembly field names case insensistive. 2009-02-19 16:17:17 +01:00
Alexandre Julliard fb04bcf638 Fix position of CDECL qualifier for functions that return pointers. 2009-02-06 14:54:01 +01:00
Andrew Talbot c0ad988e67 msi: Remove unused functions. 2009-02-06 13:04:03 +01:00
Alexandre Julliard 4e29ceeb77 include: Define LANGID in wtypes.idl. 2009-02-04 15:06:25 +01:00
Jacek Caban 0194b8f08c jscript: Add IActiveScriptParse64 declaration and use it on Win64. 2009-02-03 12:39:23 +01:00
Alexandre Julliard 8ca2aa3da9 msi: Fix compiler warning on older gcc. 2009-01-30 13:44:06 +01:00
Alasdair Sinclair 0bd6da81c5 msi/tests: Fix missing void in empty parameter list. 2009-01-29 12:19:44 +01:00
Hans Leidekker 8fec17b5ad msi: Add stub implementations of MsiSourceListClearSourceA/W. 2009-01-27 14:27:00 +01:00
Marcus Meissner 76b08f3aa7 msi: Initialize row (Coverity). 2009-01-26 16:08:25 +01:00
Nikolay Sivov 2fbe8d23eb msi: Fix potential NULL pointer dereference in ILockBytes_Release (Coverity). 2009-01-26 15:49:01 +01:00
Nikolay Sivov 9598a50916 msi: Fix NULL dereference in MsiQueryComponentStateW (Coverity). 2009-01-26 15:48:57 +01:00
Nikolay Sivov c3e2cb00d5 msi: Remove redundant pointer check (Coverity). 2009-01-26 14:30:34 +01:00
Ge van Geldorp 78457300aa msi/tests: EstimatedSize is not set consistently between Windows Installer versions. 2009-01-20 14:02:43 +01:00
Ge van Geldorp 3355f3d66f msi/tests: Double nul-terminate REG_MULTI_SZ values. 2009-01-19 14:18:04 +01:00
Ge van Geldorp 349d8bd1a1 msi/tests: Windows Installer 3.0 often returns ERROR_INVALID_PARAMETER. 2009-01-19 14:17:57 +01:00
Andrew Nguyen 6d75522fb4 msi/tests: Fix a few handle leaks.
This was pointed out by Christoph von Wittich.
2009-01-19 13:36:27 +01:00
Michael Stefaniuc 5f3ac30b3c msi: Remove superfluous pointer casts. 2009-01-15 12:43:03 +01:00
Michael Stefaniuc 9975dcd19e msi/tests: Remove superfluous pointer casts. 2009-01-15 12:42:57 +01:00
Michael Stefaniuc f516cab017 include: Change to LONG/ULONG in fdi.h for Win64 compatibility. 2009-01-14 12:21:20 +01:00
Michael Stefaniuc 602f42c25f include: Change to LONG/ULONG in fci.h for Win64 compatibility. 2009-01-14 12:21:13 +01:00
Ge van Geldorp f9f2e91198 msi/tests: Opening package with relative filename sometimes succeeds on Windows. 2009-01-12 14:34:51 +01:00
Andrew Talbot 668197a898 msi: Declare some functions static. 2009-01-12 13:10:53 +01:00
Alexandre Julliard 81ecd7041a msi: Fix pointer cast warnings on 64-bit. 2009-01-08 17:26:44 +01:00
Alexandre Julliard 35811a9078 msi/tests: Use CreateFile instead of OpenFile to avoid handle casts. 2009-01-08 13:05:27 +01:00
Paul Vriens bb7efb1deb msi/tests: Skip some tests if we don't have enough rights. 2009-01-08 12:40:26 +01:00
Michael Stefaniuc 6bd893a960 msi: Change MSIHANDLE to ULONG for Win64 compatibility.
Also fix the compiler warnings produced by this change.
2009-01-05 12:34:12 +01:00
Alexandre Julliard ddc34141cd msi/tests: Fix pointer casting warnings on 64-bit. 2009-01-03 20:13:45 +01:00
Alexandre Julliard 3e7ac7ea2e msi/tests: Add CDECL to the cabinet callback functions. 2009-01-03 20:12:49 +01:00
Maarten Lankhorst 49abc9878f msi: Add missing CDECL to cabinet functions. 2008-12-23 18:50:57 +01:00
Alexandre Julliard 2a5cf54f05 msi/tests: Avoid sizeof in traces. 2008-12-20 13:32:59 +01:00
Aric Stewart 17ffb562aa msi: Fix some NULL checking in MSI_RecordGetStringA.
Includes a few record tests with a NULL buffer.
2008-12-18 14:19:40 +01:00
Aric Stewart f10eb0bfa2 msi: EndDialog with Ignore should not be an error. 2008-12-17 11:38:52 +01:00
Hans Leidekker 8bd9a3aa09 janitorial: Don't depend on user32 for the self registration functions. 2008-12-17 11:38:32 +01:00
Paul Vriens 017fee4aa0 msi/tests: Run tests again on Win9x and NT4. 2008-12-16 12:51:20 +01:00
James Hawkins 0ccb714470 msi: Add tests for MsiGetPatchInfo. 2008-12-15 12:36:00 +01:00
James Hawkins c059ceb5b0 msi: Set the property specified by the Source attribute of the Media table when applying a patch. 2008-12-15 12:34:56 +01:00
James Hawkins 01eb930005 msi: Publish the patch information. 2008-12-15 12:34:52 +01:00
James Hawkins 5aac1ec6e5 msi: Implement MsiGetPatchInfoExW. 2008-12-15 12:34:35 +01:00
James Hawkins b5e3e19a19 msi: Add the ability to query a specific context for install properties. 2008-12-15 12:34:18 +01:00
James Hawkins 880b9199a9 msi: Add the ability to query a specific context for a patch. 2008-12-15 12:34:12 +01:00
James Hawkins 4a9f6995aa msi: Add the ability to query a specific context for a product key. 2008-12-15 12:34:06 +01:00
James Hawkins d195ee3cc4 msi: Forward MsiGetPatchInfoExA to MsiGetPatchInfoExW. 2008-12-15 12:34:00 +01:00
James Hawkins 199a26c81a msi: Add a stub implementation of MsiGetPatchInfoEx. 2008-12-15 12:33:56 +01:00
Francois Gouget 0d7cb11fdf msi/tests: Make enum_stream_names() and package_RegDeleteTreeW() static. 2008-12-15 12:25:48 +01:00
Alexandre Julliard 0b99af82b2 msi: Don't include msvcrt headers. 2008-12-12 10:19:54 +01:00
ByeongSik Jeon 5f3287d79f *Ko.rc: Update Korean resource.
Fix the unnecessary SUBLANG_NATURAL.
Change the font size from 8 to 9.
2008-12-11 12:21:07 +01:00
Paul Vriens 194c053021 msi/tests: Skip tests on win9x due to different registry keys. 2008-12-11 11:50:12 +01:00
Paul Vriens 732c1e8d31 msi/tests: Run tests again on Win9x and NT4. 2008-12-10 10:48:05 +01:00
James Hawkins dfb8b664d6 msi: Add tests for MsiGetProductProperty. 2008-12-09 11:24:19 +01:00
James Hawkins da783c3888 msi: Implement MsiGetProductPropertyW. 2008-12-09 11:24:13 +01:00
James Hawkins 06a438152c msi: Forward MsiGetProductPropertyA to MsiGetProductPropertyW. 2008-12-09 11:24:09 +01:00
James Hawkins 61c94d281a msi: Add tests for MsiEnumPatches. 2008-12-09 11:24:04 +01:00
James Hawkins e07ed1a2eb msi: Implement MsiEnumPatchesW. 2008-12-09 11:23:56 +01:00
James Hawkins c46f2102c9 msi: Forward MsiEnumPatchesA to MsiEnumPatchesW. 2008-12-09 11:23:49 +01:00
James Hawkins a9e0290934 msi: Add the ability to delete multiple users' component keys. 2008-12-09 10:28:14 +01:00
James Hawkins bdf7da9bdc msi: Remove a duplicated function. 2008-12-09 10:28:04 +01:00
James Hawkins 8438d21127 msi: Remove a duplicated function. 2008-12-09 10:27:58 +01:00
James Hawkins 98c703ab87 msi: Add the ability to open multiple users' install properties key. 2008-12-09 10:27:52 +01:00
James Hawkins b198f4f23f msi: Add the ability to open multiple users' component keys. 2008-12-09 10:27:45 +01:00
James Hawkins 930b429d1e msi: Add the ability to open multiple users product keys. 2008-12-09 10:27:37 +01:00
James Hawkins 947c4c312a msi: Add tests for MsiEnumPatchesEx. 2008-12-09 10:25:47 +01:00
James Hawkins ff87f354c4 msi: Fix an uninitialized variable. 2008-12-09 10:25:44 +01:00
Andrew Talbot 94d22682c1 msi: Remove an unused declaration. 2008-12-08 22:02:53 +01:00
James Hawkins 87fef9fd22 msi: Implement MsiEnumPatchesExW. 2008-12-08 12:18:49 +01:00
James Hawkins a32fcfa9b1 msi: Forward MsiEnumPatchesExA to MsiEnumPatchesExW. 2008-12-08 12:06:42 +01:00
James Hawkins 7df94f3b04 msi: Fix the type of the last parameter of MsiEnumPatchesEx. 2008-12-08 12:06:06 +01:00
Lei Zhang 4153fc1904 msi: Set DllVersion registry key for CLSID_IMsiServerMessage. 2008-11-28 13:41:00 +01:00
Francois Gouget d7119f2b73 msi: Remove WINAPI on static functions where not needed. 2008-11-28 12:54:37 +01:00
Michael Stefaniuc b1a54bf7a3 msi: Remove casts of void pointers. 2008-11-25 11:55:56 +01:00
Paul Vriens 3c533397e9 msi/tests: Skip tests on win9x by checking functionality instead of registry keys. 2008-11-17 13:16:08 +01:00
Paul Vriens 1dba41b104 msi/tests: Skip some tests on Win9x and WinMe. 2008-11-13 15:41:30 +01:00
Paul Vriens b4874a8921 msi/tests: Fix some test failures on Win9x and WinMe. 2008-11-11 14:06:49 +01:00
James Hawkins 7051bf5e22 msi: Remove an unused registry function. 2008-11-04 11:24:16 +01:00
James Hawkins e3074348fc msi: Factor out the code to open the UserData features key. 2008-11-04 11:24:11 +01:00
James Hawkins 0c01c586c7 msi: Factor out the code to open the features key. 2008-11-04 11:24:04 +01:00
James Hawkins 70be1e7746 msi: Factor out the code to open a product key. 2008-11-04 11:23:51 +01:00
James Hawkins f12b9cea99 msi: Factor out the table insertion code. 2008-11-04 11:23:30 +01:00