Commit Graph

90 Commits

Author SHA1 Message Date
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
James Hawkins
37a058208d msi: Fix a record handle leak. 2009-12-14 12:20:25 +01:00
James Hawkins
3188792a30 msi: Store the number of types we queried. We were leaking these types because we didn't have the correct count.
This change also fixes weird 8-space indenting in free_merge_tables.
2009-12-14 12:20:14 +01:00
Hib Eris
9dddb94b99 msi: Fix merging string type checks. 2009-10-20 15:55:43 +02:00
Hib Eris
a3214c978d msi: Fix a failure with merging existing tables. 2009-10-20 15:03:33 +02:00
Hans Leidekker
8dd3d389b0 msi: Create the local copy before opening the database. 2009-10-20 14:39:55 +02:00
Hans Leidekker
534f20bc49 msi: Get rid of some redundant initializations. 2009-10-19 15:02:42 +02:00
Hans Leidekker
843382f284 msi: Define common strings only once. 2009-10-15 14:16:50 +02:00
Hans Leidekker
0b60ed8ff1 msi: Fix parsing of integer column width specifiers. 2009-08-04 13:05:30 +02:00
Hans Leidekker
60b7604aa1 msi: Support opening transform databases. 2009-06-30 13:46:39 +02:00
Marcus Meissner
890b5dafb6 msi: Check the correct pointers for allocation failure (Coverity). 2009-06-05 15:19:57 +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
987d17dc6f msi: Fix merging tables with string primary keys. 2009-05-27 12:51:31 +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
Hans Leidekker
184474ea66 msi: Support setting summary information by importing a _SummaryInformation table. 2009-04-14 15:20:58 -05:00
James Hawkins
b3c9875cf7 msi: Correctly order transposed column values in the INSERT query. 2009-03-02 12:04:57 +01:00
Marcus Meissner
76b08f3aa7 msi: Initialize row (Coverity). 2009-01-26 16:08:25 +01:00
Michael Stefaniuc
5f3ac30b3c msi: Remove superfluous pointer casts. 2009-01-15 12:43:03 +01:00
Andrew Talbot
668197a898 msi: Declare some functions static. 2009-01-12 13:10:53 +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
Andrew Talbot
40db5bdb16 msi: Sign-compare warnings fix. 2008-10-21 11:45:39 +02:00
James Hawkins
8128d97fd4 msi: Replace lengthy calls to MSI_DatabaseOpenView with MSI_OpenQuery. 2008-10-09 12:58:47 +02:00
James Hawkins
f03889ae82 msi: Add initial implementation of MsiDatabaseMerge, with tests. 2008-10-09 12:58:25 +02:00
Michael Stefaniuc
704ebf280e msi: Use the right FAILED/SUCCEEDED macro instead of negating the opposite. 2008-10-08 13:43:17 +02:00
James Hawkins
4749ee2662 msi: Forward MsiDatabaseMergeA to MsiDatabaseMergeW. 2008-10-01 11:41:29 -05:00
James Hawkins
525865447e msi: Add a stub implementation of MsiDatabaseMerge. 2008-10-01 11:41:23 -05:00
James Hawkins
4b9fd1d5e2 msi: Store the _Columns and _Tables tables in the database structure. 2008-08-25 11:40:46 +02:00
James Hawkins
ca4758201d msi: Parse the MSIDBOPEN_PATCHFILE flag. 2008-07-08 10:50:11 +02:00
Dmitry Timoshkov
76d6b76737 msi: Mark some data as constant. 2008-05-26 19:46:09 +02:00
James Hawkins
4439e0b57d msi: Make local functions static. 2008-03-01 12:18:40 +01:00