Michael Stefaniuc
a9cb67bb7f
msi: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 10:22:10 +02:00
Zebediah Figura
85d1fb62b3
msi: Execute custom actions in a separate process.
...
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>
2018-04-26 13:27:10 +02:00
Zebediah Figura
bf5589311d
msi: Make MsiGetSummaryInformation() RPC-compatible.
...
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>
2018-04-20 14:07:08 +02:00
Zebediah Figura
ed0a8dd3bf
msi: Make MsiDatabaseGetPrimaryKeys() RPC-compatible.
...
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>
2018-04-20 14:07:04 +02:00
Zebediah Figura
c6bd4d8c35
msi: Make MsiDatabaseOpenView() RPC-compatible.
...
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>
2018-04-19 12:51:21 +02:00
Zebediah Figura
252dd11f20
msi: Make MsiDatabaseIsTablePersistent() RPC-compatible.
...
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>
2018-04-19 12:51:21 +02:00
Zebediah Figura
8bfb4e8b62
msi: Convert the IWineMsiRemote* remote interfaces to RPC stubs.
...
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>
2018-04-16 11:48:17 +02:00
Zebediah Figura
b4c39f4e7c
msi: Avoid a null pointer dereference.
...
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-07-21 14:52:57 +02:00
Carlo Bramini
b568992383
msi: Remove useless code.
...
Signed-off-by: Carlo Bramini <carlo_bramini@users.sourceforge.net>
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-24 11:01:32 +02:00
Hans Leidekker
17b05316a5
msi: Clean up handling of temporary files.
2015-04-01 22:34:20 +09:00
Nikolay Sivov
2478421d87
msi: Return interface pointer instead of impl pointer.
2015-03-24 18:16:37 +09:00
Francois Gouget
232d1b6e3f
msi: Remove unneeded NONAMELESSXXX directives.
2015-03-16 15:04:21 +09:00
Michael Stefaniuc
be813aed6f
msi: Remove comparison of pointer with >= NULL (PVS-Studio).
2015-03-09 22:07:08 +09:00
Hans Leidekker
0dba391d67
msi: Don't write streams to storage until the database is committed.
...
Native allows streams to be created with names that exceed the maximum
length allowed by OLE storages. These streams can be used normally, it's
just not possible to commit such a database.
2015-02-13 21:48:21 +09:00
Hans Leidekker
d954fbf8da
msi: Get rid of the open streams cache.
2015-02-13 21:48:07 +09:00
Hans Leidekker
f41ac94e0e
msi: Include the terminating null in the buffer size for decoded stream names.
2014-10-02 16:59:04 +02:00
Nikolay Sivov
58bbe5ac4c
msi: Free records on error paths (Coverity).
2013-04-01 12:32:37 +02:00
Hans Leidekker
6a588baaf7
msi: Use inline wrappers for calling COM methods.
2012-07-27 17:05:32 +02:00
Andrew Talbot
895b48e9ed
msi: Mark fall-throughs in switch statements.
2011-10-06 16:47:33 -05:00
Hans Leidekker
0f67869d84
msi: Print a warning instead of a fixme if we fail to open the database.
2011-08-23 16:53:56 +02:00
Hans Leidekker
e1c2e8828f
msi: Clean up the database queries.
2011-07-27 11:55:16 +02:00
Hans Leidekker
b5ea0030f0
msi: Allow read sharing if the package is openend in transacted mode.
2011-07-25 17:59:04 +02:00
Hans Leidekker
9299319b88
msi: Remove some dead assignments (clang).
2011-07-07 14:45:59 +02:00
Frédéric Delanoy
99e422c975
msi: Remove dead assignment (Clang).
2011-07-06 11:30:10 +02:00
Hans Leidekker
7d677fc327
msi: Delay creating local installer and patch packages until the product is registered.
2011-07-01 14:39:36 +02:00
Hans Leidekker
c7e36d8ba8
msi: Unescape ^Q^Y sequences in text archives.
2011-05-12 18:23:00 +02:00
Hans Leidekker
e2ba5dce06
msi: Handle embedded nulls in text archives.
2011-05-12 18:22:54 +02:00
Hans Leidekker
4f9971f5f8
msi: Keep track of a stream's storage.
2011-05-06 16:40:06 +02:00
Hans Leidekker
eee070f1e0
msi: Add offsets to disk ids added by patches.
2011-04-14 17:37:23 +02:00
David Hedberg
fed6e5211c
msi: Add an offset to sequence numbers belonging to files added by a patch.
2011-03-29 12:21:49 +02:00
Michael Stefaniuc
24ad5cb68f
msi: Use an iface instead of a vtbl pointer in msi_remote_database_impl.
2010-12-15 13:18:45 +01:00
Hans Leidekker
c3adb72820
msi: Add support for importing and exporting the special _ForceCodepage table.
2010-11-17 14:01:13 +01:00
Hans Leidekker
eaa57c5b7b
msi: Compare strings without depending on thread locale.
2010-10-19 13:49:54 +02:00
Hans Leidekker
3ef3e81f9e
msi: Avoid a crash on database destruction.
2010-09-18 13:06:21 +02:00
Hans Leidekker
dd7514a38d
msi: Move database initialization to a separate function.
2010-08-27 12:08:33 +02:00
Hans Leidekker
eef54ffe6b
msi: Open the database storage in transacted mode when MSIDBOPEN_CREATE or MSIDBOPEN_TRANSACT is specified.
2010-08-27 12:08:29 +02:00
Hans Leidekker
d10208e863
msi: Improve traces in db_get_raw_stream.
2010-07-21 13:24:00 +02:00
Hans Leidekker
fba248642b
msi: Reverse the transform storage list order.
...
This ensures that we use the most recently added stream if another
transform storage contains a stream by the same name. Fixes
wordconv.msp, an update for Word 2007.
2010-07-21 13:24:00 +02:00
Hans Leidekker
d8504e0550
msi: Handle MSIDBOPEN_PATCHFILE properly in MsiOpenDatabase.
2010-04-19 14:57:49 +02:00
Hans Leidekker
faf750f2f7
msi: Remove stream from streams cache before destroying it.
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
Nikolay Sivov
5c6de7957e
msi: Convert IWineMsiRemoteDatabase BSTR parameters to LPCWSTR to avoid typecast.
2010-03-15 14:18:06 +01:00
Hans Leidekker
9f68142118
msi: Encode stream name in the callers of db_get_raw_stream.
2010-02-19 13:06:41 +01:00
Hans Leidekker
d9e40b8219
msi: Destroy streams cache when applying a transform.
2010-02-19 13:06:36 +01:00
Michael Stefaniuc
a0774cabab
msi: Avoid using HIWORD() on string pointers.
2010-01-29 17:25:49 +01:00
Hans Leidekker
839e487c84
msi: Propagate errors from IStorage_OpenStream again in db_get_raw_stream.
...
Fixes a regression introduced by ef522c5ef0
.
2009-12-18 11:47:46 +01:00
James Hawkins
6b403d1a31
msi: Move MSITRANSFORM and MSISTREAM and associated methods to the dabatase implementation file as they are database objects/methods.
2009-12-17 12:53:34 +01:00
James Hawkins
a2f5d0e270
msi: Free the cached streams when closing the database.
2009-12-17 12:53:27 +01:00
Hans Leidekker
ef522c5ef0
msi: Clone the open stream instead of trying to open a stream again.
2009-12-16 13:04:35 +01:00
James Hawkins
b530f38baa
msi: Refactor freeing the import sql strings.
2009-12-16 12:42:33 +01:00