Commit Graph

190 Commits

Author SHA1 Message Date
Hans Leidekker 73d316c58d msi: Also update the UI when removing files listed in the RemoveFiles table. 2010-03-05 13:14:46 +01:00
Hans Leidekker a358c7f6d4 msi: Update the UI in the MoveFiles action. 2010-03-05 13:14:23 +01:00
Hans Leidekker aba6afc85e msi: Move the implementation of the MoveFiles action to files.c. 2010-03-05 13:14:19 +01:00
Hans Leidekker 2666294f64 msi: Properly update the UI in the DuplicateFiles and RemoveDuplicateFiles actions. 2010-03-05 13:13:57 +01:00
Hans Leidekker fd5887e5a9 msi: Remove empty directories as part of the RemoveFiles action. 2010-02-26 14:20:48 +01:00
Hans Leidekker 253a7fa73c msi: Implement the RemoveDuplicateFiles standard action. 2010-02-23 13:31:01 +01:00
Hans Leidekker 598c542607 msi: Get rid of ACTION_VerifyComponentForAction. 2010-02-16 12:28:56 +01:00
André Hentschel 3299bfd471 msi: Fix crash with access to component. 2010-02-02 11:47:19 +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 843382f284 msi: Define common strings only once. 2009-10-15 14:16:50 +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 5f3ac30b3c msi: Remove superfluous pointer casts. 2009-01-15 12:43:03 +01:00
Alexandre Julliard 0b99af82b2 msi: Don't include msvcrt headers. 2008-12-12 10:19:54 +01:00
James Hawkins d15fddf6f5 msi: Resolve file source paths dynamically, as the source directory can be changed. 2008-10-07 12:13:33 +02:00
James Hawkins 765275a306 msi: Make sure read-only source files are set writable after being copied. 2008-09-08 12:47:22 +02:00
James Hawkins 472b991958 msi: Don't remove a misc file if the action is unknown. 2008-08-21 11:44:39 +02:00
James Hawkins f909e1c06e msi: Don't remove a file that is installed as source. 2008-08-21 11:44:19 +02:00
James Hawkins b965a74ef2 msi: Downgrade an ERR to a TRACE. 2008-08-21 11:43:58 +02:00
James Hawkins 7b858882ac msi: If the filename is empty or NULL, remove the directory. 2008-08-21 11:43:51 +02:00
James Hawkins 10a2a5effe msi: Base removal of a file on the component's action, not the file's state. 2008-08-19 13:56:01 +02:00
James Hawkins e64a699b07 msi: Remove misc files from the RemoveFile table. 2008-08-19 13:39:40 +02:00
James Hawkins a00bdc1178 msi: A file's component's state does not determine file removal. 2008-08-19 13:39:30 +02:00
James Hawkins f33ef6ac3b msi: Don't remove a file if the old file is strictly newer than the version to be installed. 2008-08-19 13:39:19 +02:00
James Hawkins ca4b17efe8 msi: Don't check for a NULL component, as the component is guaranteed to exist. 2008-08-19 13:39:11 +02:00
James Hawkins 74239fcd91 msi: Factor out media handling and use the new interface to efficiently extract assemblies. 2008-08-19 13:37:51 +02:00
James Hawkins 64a9e0f750 msi: msidbFileAttributesVital has no effect on the installation of files. 2008-07-22 13:10:21 +02:00
James Hawkins 4e467ad729 msi: Halt the installation with an error if a source file is missing. 2008-07-22 13:10:12 +02:00
James Hawkins 89a8cfdb53 msi: Don't overwrite a file that has a greater or equal version to the source file. 2008-06-25 20:28:52 +02:00
James Hawkins 5538fa0290 msi: Publish media disks whether the drive type is removable or not. 2008-06-24 12:14:42 +02:00
James Hawkins d3cc801da1 msi: Set the source path for uncompressed files when loading the file. 2008-06-11 11:27:15 +02:00
James Hawkins 77d259f46c msi: Search the last used source if the cabinet to extract cannot be found. 2008-05-22 11:30:54 +02:00
James Hawkins bfe07d1d07 msi: Add initial implementation of MsiPublishAssemblies. 2008-04-30 13:45:23 +02:00
James Hawkins 82517d6d67 msi: Set the install context based on the ALLUSERS property. 2008-04-07 11:27:10 +02:00
James Hawkins e94b065df3 msi: Fix the type of the ID parameter of MsiSourceListEnumMediaDisks. 2008-03-20 14:27:35 +01:00
Ove Kaaven be874f1a26 msi: Fix bug in handling of multivolume CAB files. 2008-03-07 10:52:11 +01:00
James Hawkins bdbb7a0348 msi: Search existing published sources if the media cannot be found. 2008-02-26 11:20:46 +01:00
James Hawkins 7d10d1d2d0 msi: Store the media type and set the last used source type accordingly. 2008-02-26 11:20:27 +01:00
James Hawkins d62bd166dc msi: Remove setting a source list property that's in the wrong place. 2008-02-26 11:20:07 +01:00
James Hawkins 4d2cf7a44b msi: Publish source information in the user-unmanaged context. 2008-02-26 11:20:02 +01:00
James Hawkins ced64861f5 msi: dest_path refers to the directory prefix, not the entire file path. 2008-01-16 12:16:43 +01:00
James Hawkins 5352d099b4 msi: Create parent directories when duplicating files if they don't exist, with tests. 2008-01-07 12:16:56 +01:00
James Hawkins b012c3366c msi: Directly download mi->source now that SourceDir points to the URL. 2008-01-07 12:15:56 +01:00
James Hawkins 4b4f737bfc msi: Only read an internal package if the file to install is compressed. 2008-01-07 12:14:43 +01:00
James Hawkins d51ed8bd93 msi: Free the cabinet string on error. 2007-12-12 13:48:50 +01:00
James Hawkins 33a4fe19de msi: Don't check for the media or cabinet if the cabinet is internal. 2007-11-29 13:37:13 +01:00
James Hawkins ca9a4dc0d9 msi: Only check the volume label if it's different than the first media's volume label. 2007-11-26 12:28:24 +01:00
James Hawkins 4160722b07 msi: Check the destination file's hash and skip that file if the hash matches. 2007-11-26 12:28:15 +01:00
James Hawkins 075e84bd90 msi: Check the cabinet's full path for existence, not just the cabinet name. 2007-11-20 12:29:00 +01:00
James Hawkins 78eead93fd msi: Don't check for a cabinet's existence if it's embedded in the package. 2007-11-19 12:55:36 +01:00
James Hawkins 4e9940990b msi: Don't ignore the error returned by ready_media. 2007-11-15 12:48:29 +01:00
James Hawkins b1507aee98 msi: Only check the presence of the cabinet if the file is compressed. 2007-11-15 12:48:18 +01:00
James Hawkins bb747e4fbe msi: Simplify ready_media. 2007-11-15 12:47:59 +01:00
James Hawkins 5606428a71 msi: Set media info strings to NULL after freeing them. 2007-10-23 18:05:32 +02:00
James Hawkins 5e46fc9019 msi: Delay publishing of the SourceList until the PublishProduct action. 2007-07-03 13:43:20 +02:00
James Hawkins 71d7da1170 msi: Fetch the volume name when getting disk info. 2007-06-26 11:56:47 +02:00
Rob Shearman f533159bb6 msi: Only use the long name for the file source if the file has one. 2007-06-22 12:18:22 +02:00
James Hawkins 44649d2ff8 msi: Fall back to checking if the cab exists if the volume name doesn't match. 2007-05-30 11:48:51 +02:00
James Hawkins 1aa0082558 msi: Create the destination directory if it doesn't exist when duplicating files. 2007-05-30 11:48:40 +02:00
James Hawkins 666cfd1c03 msi: Only check the volume label for every media after the first disk. 2007-05-11 11:20:18 +02:00
James Hawkins 6eb7eadffa msi: Check the volume name when changing media. 2007-05-09 12:07:01 +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
James Hawkins 7ef8428b5e msi: Reset the is_extracted flag when every cabinet is loaded. 2007-04-12 16:18:08 +02:00
James Hawkins 8cedb218c3 msi: Load the folder property if available and requested. 2007-03-29 21:01:42 +02: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 5b8282120a msi: Don't skip files continued from a previous cabinet. 2007-02-08 13:01:40 +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
James Hawkins 30577c253a msi: Allow uncompressed files before compressed files in the same media. 2007-02-05 12:27:33 +01:00
James Hawkins a64945baea msi: Use mi->source if the source is not a full path. 2006-11-30 12:26:08 +01:00
James Hawkins 7125d3073d msi: Don't fail if we can't remove an existing install file. 2006-11-29 14:06:49 +01:00
Mike McCormack ebf2733527 msi: Clean up parameters of msi_media_get_disk_info(). 2006-11-20 11:50:15 +01:00
Mike McCormack 18db60782f msi: Fix some memory leaks. 2006-11-20 11:50:15 +01:00
Mike McCormack 13078f180e msi: Don't leak row handles. 2006-11-20 11:50:15 +01:00
Mike McCormack c88c0b453d msi: Remove track_tempfile()'s unused 2nd parameter. 2006-11-14 11:43:17 +01:00
James Hawkins 31a9b087c1 msi: Notify the external UI handler when changing media. 2006-11-14 11:35:00 +01:00
James Hawkins 5cc4a8915f msi: Fix a heap corruption bug by resizing the src string before adding to it. 2006-11-13 12:46:25 +01:00
James Hawkins fa8fc1628a msi: Add support for continuous cabinets. 2006-11-09 10:36:21 +01:00
James Hawkins 6d537a311f msi: Extract cabinets in ACTION_InstallFiles. ready_media is for finding and loading medi. 2006-11-09 10:36:11 +01:00
James Hawkins d21e1cc05b msi: Move the file sequence check out of ready_media_info to avoid an unnecessary function call. 2006-11-09 10:35:59 +01:00
James Hawkins 6ef6512938 msi: Factor out load_media_info from ready_media_for_file. 2006-11-09 10:35:49 +01:00
James Hawkins a621c2a661 msi: Use disk_prompt from the media_info structure instead of passing an extra parameter to msi_change_media. 2006-11-09 10:35:38 +01:00
James Hawkins 1ae4ab6ef7 msi: Factor out download_remote_cabinet and reuse extract_cabinet_file to extract a remote cabinet. 2006-11-08 13:00:34 +01:00
James Hawkins ae18c2dc7f msi: Store the base URL of the MSI package if it is downloaded. 2006-11-08 13:00:15 +01:00
James Hawkins 542101fcda msi: Factor copy_install_file out of ACTION_InstallFiles. 2006-11-08 12:59:54 +01:00
James Hawkins a13bbaf736 msi: Factor schedule_install_files out of ACTION_InstallFiles. 2006-11-08 12:57:54 +01:00
James Hawkins de3b84df09 msi: Model the media_info structure members after the columns in the media table. 2006-11-08 12:56:47 +01:00
James Hawkins 842ffc3545 msi: Use msi_alloc_zero instead of a helper function that sets everything to zero. 2006-11-08 12:55:05 +01:00
James Hawkins 988509e1af msi: Use the file's component instead of passing an extra parameter to set_file_source. 2006-11-08 12:54:16 +01:00
James Hawkins b81f1ce561 msi: Use the media_info structure instead of passing in individual values to extract_cabinet_file. 2006-11-08 12:54:08 +01:00
James Hawkins 62dc9ca691 msi: Extract cabinets based on DiskId, not LastSequence. 2006-10-27 12:09:28 +02:00
James Hawkins c6bfbde849 msi: Implement handling for the ErrorDialog and use it to change media. 2006-10-27 12:08:46 +02:00
Mike McCormack b851d46552 msi: Avoid crashing if writeout_cabinet_stream fails. 2006-10-27 12:01:40 +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 75cc5f1e5e msi: Non-compressed files may come before the list of compressed files in the file sequence. 2006-08-15 11:42:44 +02:00
Andrew Talbot 92725e5299 msi: Write-strings warning fix. 2006-08-11 19:26:41 +02:00
James Hawkins 5d37be9e56 msi: Only remove a file if the version to be installed is strictly newer than the old file. 2006-08-11 11:56:27 +02:00
James Hawkins 1ff96c63a8 msi: Download install cabinet files if the msi package is remote. 2006-08-10 10:55:23 +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
James Hawkins 1dd97aa154 msi: A file that does not have the msidbFileAttributesCompressed bit set should be considered non-compressed. 2006-08-02 11:45:04 +02:00