Hans Leidekker
a0a800ab1b
msi: Don't leak the file handle on error in cabinet_close_file_info().
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 19:57:28 +02:00
Francois Gouget
b60e406450
msi: Remove CDECL on static functions where not needed.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-01 17:07:38 +02:00
Hans Leidekker
c4fc91f4bf
msi: Use wide character string literals in the remaining files.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-29 20:19:12 +01:00
Alexandre Julliard
7cd3c9f073
msi: Build with msvcrt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-13 14:34:51 +02:00
Hans Leidekker
15f852015a
msi: Disable filesystem redirection only when really needed.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46846
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-21 08:23:18 +01:00
Hans Leidekker
85fea53af8
msi: Only perform the media check if the label of the disk entry differs from the last.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40433
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-07 10:47:21 -06:00
Alexandre Julliard
a47343b973
msi: Return an error code instead of a button id in msi_change_media().
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-03 12:49:39 +01:00
Hans Leidekker
99aa0eb5d8
msi: Don't cache the base URL.
...
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-18 10:14:33 +02:00
Zebediah Figura
77e3d3372f
msi: Use MsiProcessMessage() to send error messages.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:55:59 +09:00
Zebediah Figura
df31a7c1ec
msi: Store string and record callback data separately.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-19 12:04:34 +02:00
Thomas Faber
689f048497
msi: Use the intended attributes when overwriting the target file in cabinet_copy_file.
...
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-29 17:08:41 +01:00
Hans Leidekker
597c5f9c4b
msi: Open database cabinet streams through the streams implementation.
2015-06-22 19:18:48 +09:00
Hans Leidekker
8969377647
msi: Perform a suffix match on the volume name.
2015-04-17 14:52:45 +09:00
Hans Leidekker
d954fbf8da
msi: Get rid of the open streams cache.
2015-02-13 21:48:07 +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
Kohei Takahashi
953359c73f
msi: Return -1 on open failure in FDI callbacks.
2013-10-15 19:20:19 +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
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
89c80c41ea
msi: Rename the need_reboot flag to need_reboot_at_end.
2012-04-02 13:30:24 +02:00
Hans Leidekker
9b2b760ea9
msi: Get the UI level from the global variable instead of the property.
2012-03-26 18:15:03 +02:00
Hans Leidekker
45a62d53b6
msi: Restrict the match on files from cabinets to files that have not been installed.
2012-03-16 16:27:38 +01:00
Hans Leidekker
c7e5f0331f
msi: Downgrade an error.
2012-01-10 18:29:04 +01:00
Hans Leidekker
2a19021610
msi: VolumeLabel and DiskPrompt are optional fields in the Media table.
2012-01-03 18:07:15 +01:00
Hans Leidekker
ad4f747fa6
msi: Fix changing media for normal files.
2011-12-23 15:12:06 +01:00
Hans Leidekker
3ad3a184d5
msi: Perform a case insensitive match on the volume label.
2011-11-22 12:43:59 +01:00
Hans Leidekker
7b7c95425a
msi: Make sure the source directory has a trailing backslash.
2011-08-04 18:27:36 +02:00
Alexandre Julliard
89472db9e3
msi: Create temp files in the destination directory instead of the root.
2011-06-09 15:56:57 +02:00
Hans Leidekker
b817fb1aaa
msi: Avoid a double free.
2011-05-20 12:44:18 +02:00
Hans Leidekker
3f7312fdc1
msi: Clone an open stream if possible in cabinet_open_stream.
2011-05-06 16:40:14 +02:00
Hans Leidekker
0c43024af7
msi: Get rid of helpers.c.
2011-05-06 16:39:08 +02:00
Hans Leidekker
cd34bfe6c1
msi: Define common strings just once.
2011-05-02 16:40:20 +02:00
Francois Gouget
d685bfa548
msi: Move msi_get_cabinet_stream() up and make it static.
2011-04-18 12:40:02 +02:00
Hans Leidekker
eee070f1e0
msi: Add offsets to disk ids added by patches.
2011-04-14 17:37:23 +02:00
Hans Leidekker
131ef6372f
msi: Add support for maintaining a list of cabinet streams.
2011-04-14 17:37:23 +02:00
Hans Leidekker
5521646380
msi: Avoid redundant loading of media info.
2011-04-14 17:37:23 +02:00
David Hedberg
18973df9c7
msi: Generalize media helpers a bit.
2011-03-29 12:21:58 +02:00
David Hedberg
477702c829
msi: Check other sources if install media not present at last used location.
2011-03-10 15:18:12 +01:00
Hans Leidekker
be790cb0ad
msi: Load media info even if there's no file to install.
2011-03-08 12:30:55 +01:00
Hans Leidekker
eaa57c5b7b
msi: Compare strings without depending on thread locale.
2010-10-19 13:49:54 +02:00
Hans Leidekker
ddbf3c754e
msi: Remove an unnecessary warning.
2010-10-01 17:48:10 +02:00
Hans Leidekker
39d6b6eb70
msi: Handle fdintNEXT_CABINET and fdintPARTIAL_FILE for cabinet streams.
2010-09-20 13:48:12 +02:00
Hans Leidekker
bd634c0491
msi: Set/unset the SourceDir property at the right stage in the execution sequence.
2010-07-23 11:46:01 +02:00
Hans Leidekker
2c20c35d3c
msi: Avoid a crash when the cabinet file must be downloaded.
...
Fixes a regression caused by e5869d5d5c
.
2010-06-23 15:27:05 +02:00
Hans Leidekker
d17ebc4032
msi: Advance to the right cabinet in ACTION_MsiPublishAssemblies.
2010-05-31 12:46:08 +02:00
Hans Leidekker
7a370c8d7b
msi: Consistently use the allocation macros.
2010-05-20 16:25:44 +02:00
Hans Leidekker
e60bf536eb
msi: Improve some traces.
2010-05-12 18:46:35 +02:00
Hans Leidekker
186f4efa3f
msi: Make msi_get_property_int and friends take a pointer to a database instead of a package.
...
They only operate on a database and this way we can use them before a package is created.
2010-04-21 11:57:33 +02:00
Hans Leidekker
e5869d5d5c
msi: Keep source directory and cabinet file separate.
2010-03-26 15:35:24 +01:00
Hans Leidekker
1d453a1ff0
msi: Search network sources in addition to disk sources.
2010-03-23 13:24:27 +01:00
Hans Leidekker
706c4f77e8
msi: Implement a second cabinet extractor on top of IStream and use it to extract embedded cabinets.
...
Currently a cabinet stream is read into memory and then written to a file,
which is then extracted like an external cabinet file. This uses more time
and disk space than necessary and fails if the cabinet is too large to fit
into memory.
2010-03-23 13:24:26 +01:00