Commit Graph

183 Commits

Author SHA1 Message Date
Alexandre Julliard
130e38e047 cabinet: Preserve trailing slash on directory name in Extract(). 2011-02-21 19:36:32 +01:00
Alexandre Julliard
3dc669ffb5 cabinet: Fix the remaining todo_wine tests in fdi.c. 2011-02-19 13:05:57 +01:00
Alexandre Julliard
866adf4b50 cabinet: Avoid some memory allocations by storing buffers directly in the FCI structure. 2011-02-18 14:54:49 +01:00
Alexandre Julliard
e1a0ef7ef8 cabinet: Add support for MSZIP compression. 2011-02-18 14:54:44 +01:00
Alexandre Julliard
527c8263a1 cabinet: Create temp files only once we have data to store into them. 2011-02-18 00:19:31 +01:00
Alexandre Julliard
d651fbe4d1 cabinet: Cleanup file loading and add infrastructure for plugging in real compression. 2011-02-18 00:19:04 +01:00
Alexandre Julliard
682d9a2929 cabinet: Create one temp file per folder and avoid an extra copy of the data. 2011-02-17 16:48:19 +01:00
Alexandre Julliard
ea22b17065 cabinet: Store the data block headers in a memory list instead of on-disk.
Compute the checksums only when writing to the final file.
2011-02-16 12:17:48 +01:00
Alexandre Julliard
afae86aa1e cabinet: Rewrite the cabinet header output code, and write everything to disk in one step. 2011-02-15 20:08:44 +01:00
Alexandre Julliard
28fce46de7 cabinet: Store the CCAB data as soon as it is available.
Also add a helper function for the cabinet header size.
2011-02-15 16:51:29 +01:00
Alexandre Julliard
5dc4986dab cabinet: Add helper functions for temp file manipulations. 2011-02-15 16:51:29 +01:00
Alexandre Julliard
21aab68fbb cabinet: Store files in a list in memory instead of in a temp file. 2011-02-15 16:51:20 +01:00
Alexandre Julliard
f6ebe3b8b2 cabinet: Store folders in a list in memory instead of in a temp file. 2011-02-14 20:05:46 +01:00
Alexandre Julliard
7a9b389465 cabinet: Move internal FDI definitions to fdi.c. 2011-02-04 15:25:31 +01:00
Alexandre Julliard
05702c146e cabinet: Call FDI function pointers explicitly instead of hiding them inside macros. 2011-02-04 15:25:31 +01:00
Alexandre Julliard
396c9fca21 cabinet: Pass an FDI pointer to internal functions instead of a handle. 2011-02-04 15:25:29 +01:00
Alexandre Julliard
826ccc1684 cabinet: Add a helper function to set error code in FDI. 2011-02-04 15:25:01 +01:00
Alexandre Julliard
a71fbe16d9 cabinet: Move the internal FCI structure to fci.c. 2011-02-04 11:35:46 +01:00
Alexandre Julliard
b18b596621 cabinet: Pass an FCI pointer to internal functions instead of a handle. 2011-02-04 11:35:41 +01:00
Alexandre Julliard
9aa0e35ecc cabinet: Call FCI function pointers explicitly instead of hiding them inside macros. 2011-02-04 11:27:37 +01:00
Alexandre Julliard
e30b19f115 cabinet: Replace the fci_set_error macro by a proper function. 2011-02-04 11:20:12 +01:00
Alexandre Julliard
09fbe972d8 cabinet: Use constants instead of hard-coded numbers for file open flags. 2011-02-03 20:02:10 +01:00
Marko Nikolic
8d9788147c cabinet/tests: Removed sign comparison warnings. 2010-10-04 16:19:22 +02:00
Alexandre Julliard
9a39cb94e4 cabinet/tests: Make some variables static. 2010-10-01 13:38:58 +02:00
Alexandre Julliard
81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Alexandre Julliard
b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Mikhail Maroukhine
09dca97fc3 cabinet: Fix compiler warning with flag -Wcast-qual. 2010-03-29 12:12:07 +02:00
Alexandre Julliard
bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Alexandre Julliard
6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Alexandre Julliard
91502b0634 cabinet/tests: Fix accesses to an invalid pointer. 2010-01-29 13:29:21 +01:00
James Hawkins
300cc0fea1 cabinet: Fix several file list leaks in the extract tests. 2010-01-07 17:59:58 +01:00
Rob Shearman
eae5b071c2 cabinet: Fix memory leaks on failure in FDICopy. 2009-12-14 16:14:39 +01:00
Marcus Meissner
87118d00fe cabinet: Fixed free_decompression_temps/_mem , handle NULL (Coverity). 2009-10-19 11:43:37 +02:00
Nicolas Le Cam
387e415fdc cabinet/tests: Split an incorrect test in two valid ones. 2009-06-29 12:26:34 +02:00
Nicolas Le Cam
027bc8100c cabinet/tests: Avoid use of lstrlenA when not needed. 2009-06-29 12:26:27 +02:00
Andrew Talbot
9ca199a87d cabinet: Constify a variable. 2009-05-26 14:25:12 +02:00
Andrew Talbot
9a079a64e6 cabinet: Declare a function static. 2009-02-09 12:22:49 +01:00
Andrew Talbot
61292cfc61 cabinet: Declare a function static. 2009-02-05 13:13:43 +01:00
Alexandre Julliard
51c7fe5fc7 cabinet: Don't try to copy data from the file if we don't even have a data buffer. 2009-01-15 12:03:08 +01:00
Michael Stefaniuc
f516cab017 include: Change to LONG/ULONG in fdi.h for Win64 compatibility. 2009-01-14 12:21:20 +01:00
Michael Stefaniuc
602f42c25f include: Change to LONG/ULONG in fci.h for Win64 compatibility. 2009-01-14 12:21:13 +01:00
Alexandre Julliard
98f89d460d cabinet: Add CDECL to the cabinet callback functions. 2009-01-05 12:39:02 +01:00
Alexandre Julliard
235ae03597 cabinet/tests: Add CDECL to the cabinet callback functions. 2009-01-03 20:12:39 +01:00
Andrew Talbot
184dbe7e63 cabinet: Declare a function static. 2009-01-02 14:27:43 +01:00
Michael Stefaniuc
e4db17f268 cabinet: Don't cast the return value of PF[CD]I_ALLOC; those are void pointers. 2009-01-02 11:53:48 +01:00
Jacek Caban
edda4637b4 cabinet: Make sure that parent directories exist when creating a new directory. 2008-12-29 15:29:28 +01:00
Francois Gouget
897af57deb cabinet/tests: Make CopyProgress() static. 2008-12-12 11:41:45 +01:00
Alexandre Julliard
16fb8fd843 cabinet: Don't allocate a huge buffer on the stack. 2008-12-11 12:24:33 +01:00
Ricardo Filipe
1a12aace57 cabinet: Fix dead stores (llvm/clang). 2008-11-18 13:04:59 +01:00
Michael Stefaniuc
bfe6fe678a cabinet: Do not cast NULL. 2008-11-03 13:38:43 +01:00