Commit Graph

222 Commits

Author SHA1 Message Date
Hans Leidekker f9dc20cfcc msi: Fix a couple of memory leaks (Coverity). 2015-07-15 23:19:25 +09:00
Hans Leidekker e6ce4de393 msi: Fix an invalid memory access (valgrind). 2015-04-21 22:21:31 +09:00
Francois Gouget 232d1b6e3f msi: Remove unneeded NONAMELESSXXX directives. 2015-03-16 15:04:21 +09:00
Hans Leidekker 123428942d msi: Support updating streams. 2015-03-04 23:57:42 +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 db3346247c msi: Get rid of the refcount parameter to msi_addstringW. 2015-02-13 21:48:12 +09:00
Hans Leidekker c6f3f72d61 msi: Always update column info after applying a transform to the _Columns table. 2015-02-13 21:48:02 +09:00
Hans Leidekker 98ae03ff4d msi: Update properties after each transform that affects the property table. 2014-11-04 21:19:28 +09:00
Daniel Beitler deb2742267 msi: Prevent call to memset with a null pointer in get_tablecolumns function. 2014-05-19 10:01:43 +02:00
Nikolay Sivov 195168351f msi: Fix a record leak on failure removing a column (Coverity). 2014-03-27 12:06:04 +01:00
Nikolay Sivov 203d282a78 msi: Fix a record leak on error path (Coverity). 2014-03-27 12:06:04 +01:00
Frédéric Delanoy 57d7f74d34 Assorted spelling fixes. 2013-11-21 19:44:46 +01:00
Hans Leidekker 1257db2109 msi: Fix integer conversion in get_table_value_from_record. 2013-07-30 14:43:34 +02:00
Michael Stefaniuc 51013ad278 msi: Use FIELD_OFFSET to calculate the size of structs with variable length array. 2012-11-09 17:10:37 +01:00
Frédéric Delanoy 84541cc5e3 msi: Fix a leak (coverity). 2012-11-05 17:44:19 +01:00
Hans Leidekker a7ff2818fe msi: Preserve strings with embedded nulls when copying from a record to the string table. 2012-10-29 14:41:21 +01:00
Hans Leidekker 9588deb54c msi: Preserve strings with embedded nulls when copying from the string table to a record. 2012-10-29 14:41:16 +01:00
Hans Leidekker 6950ac1d1c msi: Add support for storing strings with embedded nulls in the string table. 2012-10-29 14:40:40 +01:00
Marcus Meissner b9550ad352 msi: Move free after last usage (Coverity). 2012-09-06 18:23:40 +02:00
Hans Leidekker fde66de6a5 msi: Don't free cached tables in MsiDatabaseCommit. 2012-04-26 19:26:37 +02:00
Andoni Morales Alastruey 342fcb6198 msi: Implement MSIMODIFY_MERGE function in TABLE_modify. 2012-03-28 11:44:52 +02:00
Hans Leidekker c8e8f44168 msi: Use the column count specified in the table transform data.
It can be smaller than the number of columns found in the table meta data.
2012-01-24 16:57:32 +01:00
Bernhard Loos 4ac1e8e034 msi: Always use WHEREVIEW for sorting. 2011-10-20 20:48:26 +02:00
Hans Leidekker 80438ef2ce msi: Remove an unused parameter from msi_create_table. 2011-09-23 12:38:59 +02:00
Hans Leidekker e1c2e8828f msi: Clean up the database queries. 2011-07-27 11:55:16 +02:00
Hans Leidekker d1b2058500 msi: Make the column and table name parameters of get_column_info const. 2011-07-27 11:55:06 +02:00
Hans Leidekker d38ace6d4c msi: Store table and column names in the string table. 2011-07-27 11:54:58 +02:00
Hans Leidekker 911ad2bdab msi: Don't duplicate column string data. 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
Hans Leidekker 1ae309f981 msi: Get rid of some more forward declarations. 2011-06-07 14:18:34 +02:00
Hans Leidekker ab13c00fc9 msi: Add support for returning validation errors. 2011-06-07 14:18:33 +02:00
Hans Leidekker 4f9971f5f8 msi: Keep track of a stream's storage. 2011-05-06 16:40:06 +02:00
Hans Leidekker cd34bfe6c1 msi: Define common strings just once. 2011-05-02 16:40:20 +02:00
Paul Vriens abdecfbe17 msi: Only call MSI_RecordGetString() when needed (Coverity). 2011-03-17 17:44:23 +01:00
David Hedberg 599b30833a msi: Use ordering information to update the correct row. 2011-03-10 15:18:00 +01:00
Hans Leidekker 659db6e902 msi: Compare keys only in compare_record. 2011-03-07 13:17:29 +01:00
Marcus Meissner 8504548037 msi: Pointer to out of scope local variable (Coverity). 2011-03-04 16:26:01 +01:00
Hans Leidekker bf192f6ac9 msi: Handle out-of-memory condition in encode_streamname. 2011-02-01 18:14:09 +01:00
Hans Leidekker e861283a62 msi: Make sure the return value is initialized in save_table (clang). 2011-01-27 16:31:07 +01:00
Hans Leidekker eaa57c5b7b msi: Compare strings without depending on thread locale. 2010-10-19 13:49:54 +02:00
Hans Leidekker cf6e820106 msi: Allocate 3 bytes instead of 2 for in-memory string references.
Fixes an installer that stores string references as 2 byte integers and
grows the number of strings beyond the limit of 64k during installation.
2010-10-11 17:11:26 +02:00
Hans Leidekker 337fb86c3b msi: Use binary search to find the insert index for a row. 2010-09-24 18:21:03 +02:00
Hans Leidekker d8b5879798 msi: Fix comparison of table ids in TABLE_Exists. 2010-09-08 19:50:15 +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 6b1a1579f6 msi: Update an existing record even if the low bit in the transform mask is set. 2010-06-11 15:54:47 +02:00
Hans Leidekker 8f53405544 msi: Remove the string index parameter from msi_addstringW. 2010-04-19 14:57:02 +02:00
Hans Leidekker 9f68142118 msi: Encode stream name in the callers of db_get_raw_stream. 2010-02-19 13:06:41 +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
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 f45db6eee7 msi: Implement DROP_delete that deletes the drop view. We were leaking the view before. 2009-12-14 12:20:33 +01:00