Commit Graph

423 Commits

Author SHA1 Message Date
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
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 6da8041d47 msi: Run the InstallExecute sequence if the InstallUISequnce table is empty. 2007-04-16 12:10:03 +02:00
James Hawkins 8cedb218c3 msi: Load the folder property if available and requested. 2007-03-29 21:01:42 +02:00
Steven Stein ee3ac7a8fb msi: ValidateProductID action stub. 2007-02-14 22:17:41 +01:00
Misha Koshelev d8b00a071d msi: Make sure to ignore UI level flags in dialog and files as well. 2007-02-07 11:03:39 +01:00
Misha Koshelev ecd20e28ac msi: InstallPackage check for UI level must not disregard flags. 2007-02-06 13:19:55 +01:00
Francois Gouget aab5e5856e Don't put single quotes around '%s' when using the debugstr_*() functions. 2007-01-18 12:55:50 +01:00
Andrew Talbot 020bda7ee2 msi: Declare some functions static. 2007-01-12 20:41:49 +01:00
Mike McCormack 97419aea80 msi: Examine the attributes of all features before setting a component's state. 2006-12-05 11:29:02 +01:00
James Hawkins 58bb3571de msi: Add handling for the StartServices action. 2006-12-04 12:22:32 +01:00
James Hawkins d3bec32500 msi: Add handling for the InstallODBC action. 2006-11-29 14:08:14 +01:00
Dmitry Timoshkov 1cdf5cddac msi: Make some data const and static. 2006-11-29 12:44:10 +01:00
Mike McCormack a3a2eaea93 msi: Update the UI in one place only in ACTION_ProcessComponents. 2006-11-29 12:37:12 +01:00
Mike McCormack 1770c9125d msi: Advertise components of a feature that has the msidbFeatureAttributesFavorAdvertise property. 2006-11-29 12:37:07 +01:00
Mike McCormack 7eb270265f msi: Load all folders in one query, rather one per query. 2006-11-22 11:43:05 +01:00
Mike McCormack b921118f14 msi: Split msi_set_sourcedir_props into a separate function. 2006-11-20 11:50:15 +01:00
Mike McCormack fc56423904 msi: Spelling fixes. 2006-11-20 11:50:15 +01:00
Mike McCormack eba742e5cd msi: Fix a memory leak in load_folder(). 2006-11-17 11:14:44 +01:00
Francois Gouget 1ccf944900 Assorted spelling fixes. 2006-11-13 13:01:53 +01:00
Paul Vriens ded9943b5b msi: Fix typo's (Coverity). 2006-11-13 12:58:46 +01:00
Mike McCormack 3fe6a5d01e msi: Only log the Action, as it's the same as ActionRequest. 2006-11-10 11:35:38 +01:00
Mike McCormack 87fa854dcf msi: Check whether the component is enabled first. 2006-11-10 11:35:33 +01:00
Mike McCormack ad80eceb5f msi: Component attributes are bitmasks. 2006-11-10 11:35:28 +01:00
Mike McCormack 063c42cfa6 msi: Fix a memory leak. 2006-11-08 11:26:16 +01:00
Mike McCormack 9efb7b71ba msi: By default, install components locally. 2006-11-07 15:07:01 +01:00
Mike McCormack c5c5521015 msi: Split ACTION_CostFinalize into two functions. 2006-11-07 15:06:40 +01:00
Mike McCormack f86cfd4088 msi: Avoid a memory leak by freeing actions scripts in one place only. 2006-11-02 12:25:07 +01:00
Mike McCormack 9a4ba8c114 msi: Search the patch package for source cabinet files. 2006-11-01 13:38:09 +01:00
Mike McCormack ddf0b593bb msi: Mark components with missing or outdated files as incomplete. 2006-10-31 11:46:57 +01:00
Mike McCormack b76691537f msi: Split ACTION_UpdateInstallStates into two separate functions. 2006-10-30 11:20:06 +01:00
Mike McCormack 9375fd9fd3 msi: Remove redundant null checks before MSI_EvaluateCondition. 2006-10-27 12:01:37 +02:00
Mike McCormack 575cc67d0f msi: Use msi_feature_set_state and msi_component_set_state where possible. 2006-10-26 12:56:09 +02:00
Mike McCormack 6395ff6a5c msi: Create macro functions to set feature and component states. 2006-10-26 12:56:09 +02:00
Mike McCormack d1723de566 msi: Split code to get a file's verion into a separate comment. 2006-10-24 11:45:01 +02:00
Mike McCormack 0d7dc8f98d msi: Only apply transforms that are valid for a database. 2006-10-23 12:37:40 +02:00
Mike McCormack 7f98f1d086 msi: Initialize the summary information from a storage interface, not a db. 2006-10-23 12:37:32 +02:00
James Hawkins 929395c0f0 msi: Only initialize a component's state if it is linked with a feature. 2006-10-20 11:41:09 +02:00
James Hawkins 9bc12ade13 msi: Implement the InstallServices action. 2006-10-20 11:41:09 +02:00
Mike McCormack 4047cc7009 msi: Fix a memory leak. 2006-10-17 11:17:31 +02:00
James Hawkins 3797e6cada msi: Also set the SOURCEDIR property in MSI_InstallPackage. 2006-10-14 20:21:17 +02:00
Francois Gouget 58162f87fd Assorted spelling fixes. 2006-10-13 11:55:04 +02:00
James Hawkins c507543554 msi: Set the SourceDir and SOURCEDIR properties in the ResolveSource action. 2006-10-11 12:09:54 +02:00
Mike McCormack 80affb3c2d msi: Merge action.h into msipriv.h. 2006-10-10 16:12:12 +02:00
James Hawkins 563a50ab35 msi: Make internal functions static. 2006-10-09 14:40:08 +02:00
Mike McCormack f1d4646a49 msi: Win64 printf format warning fixes. 2006-10-05 11:32:32 +02:00
James Hawkins bbd4d1e3ef msi: If the feature linked to a component has a state of INSTALLSTATE_UNKNOWN, the component's state should match. 2006-09-26 21:56:05 +02:00
James Hawkins 545d0e70cf msi: Disable child features of parent features that are unselected because of the install level. 2006-09-21 13:03:32 +02:00
James Hawkins 32f570222b msi: Don't check a component's install state if a component ID is not provided. 2006-09-21 13:02:00 +02:00
James Hawkins d893cb7d1e msi: Load the component states in CostFinalize instead of CostInitialize. 2006-09-21 13:01:33 +02:00
James Hawkins ca5c11009d msi: Initialize all features' action states to INSTALLSTATE_UNKNOWN. 2006-09-21 13:01:18 +02:00
James Hawkins 937b9b2bbc msi: Only override a feature whose action state is INSTALLSTATE_SOURCE. 2006-09-21 13:01:10 +02:00
Andrew Talbot 2e372c08b5 msi: Cast-qual warnings fix. 2006-09-20 20:02:48 +02:00
Mike McCormack 4fa08a638c msi: Split the font registration code out into a separate file. 2006-09-13 11:42:35 +02:00
Mike McCormack 5f83069bd8 msi: Split code to create a random package name into a separate function. 2006-09-08 12:44:39 +02:00
Dan Kegel 337e1e202f msi: Callers of alloc_msihandle should handle failure. 2006-08-29 12:21:54 +02:00
James Hawkins 3cb82ab8d2 msi: If a component's state is not local, source, or default, default to the local state. 2006-08-12 11:39:58 +02:00
James Hawkins f84fa0ce63 msi: Fix the compressed files logic.
If the compressed file attribute is not set, use the Word Count
property to determine if files are compressed.
2006-08-08 19:34:34 +02:00
Robert Shearman ab378803ef msi: Fix the creation of shortcuts with a null icon index by mapping it to zero. 2006-08-03 22:23:09 +02:00
James Hawkins 7edea0cc68 msi: Set the install state to INSTALLSTATE_LOCAL for features with compressed files. 2006-08-02 11:42:20 +02:00
James Hawkins 38f2ba23f1 msi: Fix a couple install state test cases.
- Correctly handle the msidbComponentAttributesOptional component attribute.
- Don't set a component's state to INSTALLSTATE_LOCAL if the
  msidbComponentAttributesSourceOnly attribute is provided.
2006-08-01 10:49:20 +02:00
James Hawkins 98d1486410 msi: Set the install state to INSTALLSTATE_LOCAL for components with compressed files. 2006-07-31 21:36:19 +02:00
Mike McCormack 43f7f3ec3f msi: Don't set the shortcut's working directory if it's NULL. 2006-07-28 12:32:17 +02:00
Mike McCormack 1d46cdf11a msi: Always load all the components. 2006-07-26 10:23:34 +02:00
James Hawkins cae3215a6f msi: Set the component's initial state based on its attributes. 2006-07-21 20:22:27 +02:00
James Hawkins 7bcac31dcf msi: Update feature states after changing install levels, as they may have changed. 2006-07-20 12:50:14 +02:00
James Hawkins 7c7f0bb2c1 msi: Rename SetFeatureStates to match the naming scheme of internal msi functions. 2006-07-20 12:50:02 +02:00
Mike McCormack 9a9195d6e4 msi: Only load the features and files tables once. 2006-07-19 18:15:21 +02:00
James Hawkins 2396e2a59f msi: Sort SelectionTree items by their Display value. 2006-07-19 09:46:31 +02:00
Mike McCormack 2ec80faabe msi: Move msi_get_property_int() to helpers.c 2006-07-17 14:46:25 +02:00
Mike McCormack 230af9d21f msi: Move version string conversions to registry.c. 2006-07-14 13:32:39 +02:00
James Hawkins a1910e11bb msi: Fix handling of the no-op identifier in the Directory table. 2006-06-21 13:53:51 +02:00
Alexandre Julliard b79a53e959 msi: Make some variables static and/or const. 2006-06-12 13:39:59 +02:00
Mike McCormack ea3ab4952b msi: Remove some unnecessary NULL checks. 2006-06-09 15:20:14 +02:00
Mike McCormack 2acf800fd4 msi: Fix some pointer to integer casts. 2006-05-25 10:44:44 +02:00
Mike McCormack 20c5746649 msi: Fix a possible memory leak. 2006-05-24 10:52:33 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Labrousse Jean d0862c365b msi: Fix short name and long name mismatch in action.c. 2006-05-23 13:03:57 +02:00
Francois Gouget e739ba9551 Assorted spelling fixes. 2006-05-15 15:05:05 +02:00
Mike McCormack 3a94011ab6 msi: Clean up memset usage. 2006-04-18 21:13:52 +02:00
Mike McCormack 886036696a msi: Add stub for the RegisterComPlus and UnregisterComPlus actions. 2006-03-22 21:36:20 +01:00
Mike McCormack c1513be48c msi: Improve handling of short paths. 2006-03-21 16:19:07 +01:00
Mike McCormack fe8cd38812 msi: Remove some unnecessary indent. 2006-03-09 12:50:59 +01:00
Robert Shearman 4ac8567497 msi: Fix heap overflow in ITERATE_CreateShortcuts. 2006-02-22 22:15:54 +01:00
Robert Shearman d679bc5ab3 msi: Move the firing of control events to MSI_ProcessMessage.
Move the firing of control events from internal helper functions to
MSI_ProcessMessage so that custom actions can all cause control events
to be fired.
Added the firing of progress events.
2006-01-23 17:30:31 +01:00
Robert Shearman d2e48e01ac msi: Call ui_actiondata for more actions. 2006-01-23 17:29:50 +01:00
Mike McCormack 477bce38dc msi: Eliminate a fixed length buffer. 2006-01-16 20:38:28 +01:00
Mike McCormack aa81e4fa68 msi: Don't crash if there's no script present when we try execute one. 2006-01-10 12:09:19 +01:00
Mike McCormack e534e7726b msi: Apply any MSI transforms specified by the TRANSFORMS property. 2006-01-04 14:51:25 +01:00
Mike McCormack b7270b8c2d msi: Change some FIXME messages to comments. 2005-12-31 13:18:11 +01:00
Mike McCormack f24a9e2a24 msi: Add stub actions for CCPSearch and RMCCPSearch. 2005-12-31 13:14:23 +01:00
Francois Gouget 0edbaf7e80 Remove spaces before '\n' in traces. 2005-11-10 12:14:56 +00:00
Ivan Leo Puoti 5b22e4d6ef Fix some wrong prototypes. 2005-11-03 11:35:11 +00:00
Mike McCormack a977b2c346 Remove some redundant null pointer checks. 2005-11-03 09:56:29 +00:00
Aric Stewart d5655f90cf Force files to install if the REINSTALL property is set. 2005-11-02 14:21:17 +00:00
Mike McCormack fd4a2003db Implement the RemoveFiles action. 2005-11-02 11:42:56 +00:00
Mike McCormack dded8fb7a8 Use an enumeration for file states. 2005-11-02 10:56:42 +00:00
Mike McCormack 559427023f Add a stub for the AllocateRegistrySpace action. 2005-10-30 19:23:28 +00:00
Mike McCormack ec5edeebf4 Define MSIDBOPEN_ constants using LPCWSTR when compiling Wine. 2005-10-30 19:21:51 +00:00
Mike McCormack 9293f869cc Use msi_get_property_int() in a few more places. 2005-10-30 19:16:45 +00:00
Mike McCormack 9ba8ba30bb Use "static const" rather than "const static" as gcc -W complains
about the former.
2005-10-30 19:04:26 +00:00
Mike McCormack 991bae1409 Don't change the UI level during ExecuteAction. 2005-10-29 11:40:03 +00:00
Mike McCormack d693f461ba Remove the unused 1st parameter of ACTION_VerifyComponentForAction. 2005-10-29 11:36:48 +00:00
Mike McCormack 9c8458514c Some installers don't call the CreateFolders action before the
InstallFiles action as MSDN specifies, but it still seems to work, so
make sure that we create component directories in the InstallFiles
action anyway.
2005-10-29 11:29:17 +00:00
Thomas Weidenmueller 561f2f0399 Passing NULL as the last two parameters to ReadFile is illegal and
actually causes a crash on windows. The attached patch fixes this.
2005-10-29 10:29:08 +00:00
Mike McCormack 03b4dbbdc4 Create component folders in the CreateFolders action. 2005-10-28 09:39:29 +00:00
Mike McCormack 558abec8d5 If an action fails, print out its name as well as the error code. Use
%d for error codes so it's easy to match them up to something in
winerror.h.
2005-10-27 12:39:28 +00:00
Mike McCormack 51c6618d8d Rename load_dynamic_stringW to msi_dup_record_field to better describe
what it does, and replace a few instances with MSI_RecordGetString to
avoid allocating memory.
2005-10-27 12:36:12 +00:00
Mike McCormack ba293eef48 Tidy up the RegisterProduct action a little. 2005-10-27 12:08:16 +00:00
Mike McCormack f8fef6ea94 Create a stub function to apply a single table transform and call it
where we need to apply transforms.
2005-10-26 13:56:33 +00:00
Mike McCormack 965a72add0 Enumerate the substorage transforms for any patches that are passed on
the command line with PATCH=.  Need to implement
table_apply_transform() before this will do anything interesting.
2005-10-26 12:06:21 +00:00
Mike McCormack 61f24a4ca7 Rename ACTION_DoTopLevelINSTALL to MSI_InstallPackage, remove its
duplicate 4th parameter.
Split the code to copy a package into a separate function.
2005-09-30 10:32:41 +00:00
Mike McCormack 74f0de9638 Create a function to read a property as an integer. 2005-09-29 10:32:39 +00:00
Mike McCormack 3b95515015 Add some more action stubs, remove forward declarations. 2005-09-28 18:10:44 +00:00
Mike McCormack e3452228c6 Split command line parsing from MSI_InstallPackage into a separate
function.
2005-09-28 15:12:32 +00:00
Mike McCormack 2586a0958e Make a macro function for unimplemented actions.
Add some more unimplemented action stubs.
2005-09-26 09:56:18 +00:00
Mike McCormack b9a3a7a1f9 Stub implementation of the IsolateComponents action. 2005-09-25 15:14:03 +00:00
Mike McCormack 94fbe09c5f Add a stub implementation of the BindImage action. 2005-09-23 17:21:10 +00:00
Mike McCormack 567f0314af Stub implementation of the PatchFiles action. 2005-09-23 11:06:57 +00:00
Mike McCormack 8e22e7d7a9 Stub implementation of the MoveFiles action. 2005-09-23 10:48:17 +00:00
Mike McCormack 202166c343 Stub implementation of the RemoveIniValues action. 2005-09-23 10:09:18 +00:00
Mike McCormack 470f23d471 Fix various memory leaks. 2005-09-22 10:56:26 +00:00
Mike McCormack 566c69e7e4 Simplify the ProcessComponents action a little. 2005-09-22 10:49:17 +00:00
Mike McCormack 75658d7aaa Make build_icon_path return the path directly. 2005-09-22 10:33:57 +00:00
Mike McCormack d34b1c23a2 Implement MsiSequenceA/W. 2005-09-21 10:55:23 +00:00
Mike McCormack f3f12ab56b Simplify the InstallValidate action a little. 2005-09-21 10:20:03 +00:00
Mike McCormack ee034ba4c2 Added memory allocation inline functions (part 2). 2005-09-20 11:59:14 +00:00
Mike McCormack 67189f9d1a Fix a bug in a previous patch spotted by Dieter Komendera. 2005-09-16 18:45:19 +00:00
Mike McCormack 062ad50510 Rename load_dynamic_property and remove its unused 3rd argument. 2005-09-15 15:04:08 +00:00
Mike McCormack 4db02cdb0b Use the new msi_reg_set* macros where possible. 2005-09-15 14:58:38 +00:00
Mike McCormack 79ca56cd6a Eliminate fixed length buffers from the MSIFEATURE structure. 2005-09-13 10:37:37 +00:00
Mike McCormack efcc1ec5e4 Fix more fixed length buffers. 2005-09-12 12:07:15 +00:00
Mike McCormack f11c8b0098 Reduce the indent level of a function. 2005-09-09 14:48:51 +00:00
Mike McCormack 5c1212261f Allocate memory rather than using fixed length buffers. 2005-09-08 12:42:31 +00:00
Mike McCormack 72faac0d2f Remove an unnecessary level of indent. 2005-09-08 11:03:35 +00:00
Mike McCormack c50ef541e8 Keep temporary files in a seperate list. 2005-09-07 11:25:18 +00:00
Mike McCormack 298cdaead1 Avoid fixed length buffers for conditions. 2005-09-06 11:39:01 +00:00
Mike McCormack 54a2891d33 Make some fixme messages less alarmist. 2005-09-06 09:23:18 +00:00
Mike McCormack 8aa1a919bf Make sure to save the result calculated in ACTION_UpdateInstallStates. 2005-08-25 19:19:10 +00:00
Aric Stewart 43ec0a4d06 Display the correct text string in the action text field for the
dialog boxes. Also the string should be deformatted.
2005-08-25 09:50:08 +00:00
Johan Dahlin 0946c42d5a Added a null check for component. 2005-08-24 10:57:27 +00:00
Mike McCormack 979511fe6d - build a standard Wine list of folders instead of using an array
- use folder pointers instead of array indexes
2005-08-23 18:15:44 +00:00
Mike McCormack e18f8abee1 - build a standard Wine list of files instead of using an array
- use file pointers instead of array indexes
2005-08-23 10:03:17 +00:00
Aric Stewart d90615bb28 Make index INT not UINT because it can be -1. 2005-08-23 09:30:39 +00:00
Mike McCormack 1da2858caa - build a standard Wine list of features instead of using an array
- use feature pointers instead of array indexes
2005-08-22 14:09:17 +00:00
Mike McCormack 38d67a4537 - build a standard Wine list of components instead of using an array
- use component pointers instead of array indexes
2005-08-22 09:15:23 +00:00
Mike McCormack 3f2d5d7fbb Store the component information in a standard Wine list. 2005-08-19 10:03:11 +00:00
Aric Stewart 35706b6b4c Fixed a memory overflow and leak identified by Mike McCormack. 2005-08-16 15:57:21 +00:00
Aric Stewart 94d6818c51 Add some body to ResolveSource because it is possible to need it when
an install is begun but the media is not in the drive, such as in
install-on-demand cases.
2005-08-15 20:50:06 +00:00