Commit Graph

87 Commits

Author SHA1 Message Date
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
Rob Shearman 03e466b837 msi: Fix the buffer size calculation in msi_build_createsql_prelude. 2008-02-28 10:44:06 +01:00
James Hawkins ec086f77e3 msi: Handle carriage returns in MsiDatabaseImport. 2008-02-12 22:59:53 +01:00
James Hawkins 00cfd2899b msi: Use MsiViewModify instead of building a SQL query when adding rows to the table. 2008-02-12 22:59:46 +01:00