]> wimlib.net Git - wimlib/log
wimlib
10 years agoimagex-delete.1.in: Fix typo
Eric Biggers [Wed, 15 Jan 2014 03:17:41 +0000 (21:17 -0600)]
imagex-delete.1.in:  Fix typo

10 years agoimagex-apply.1.in: Update NOTES, remove silly example
Eric Biggers [Wed, 15 Jan 2014 03:03:26 +0000 (21:03 -0600)]
imagex-apply.1.in: Update NOTES, remove silly example

10 years agoimagex-capture.1.in: Pedantic updates
Eric Biggers [Wed, 15 Jan 2014 02:17:30 +0000 (20:17 -0600)]
imagex-capture.1.in:  Pedantic updates

10 years agowimlib_set_output_{,pack_}_compression_type(): Fix chunk size check
Eric Biggers [Wed, 15 Jan 2014 01:53:04 +0000 (19:53 -0600)]
wimlib_set_output_{,pack_}_compression_type(): Fix chunk size check

10 years agoAdd dotdot.wim, duplicate_names.wim
Eric Biggers [Wed, 15 Jan 2014 01:41:12 +0000 (19:41 -0600)]
Add dotdot.wim, duplicate_names.wim

10 years agoRefactor read_dentry_tree()
Eric Biggers [Tue, 14 Jan 2014 22:15:40 +0000 (16:15 -0600)]
Refactor read_dentry_tree()

read_dentry_tree() now includes code previously in
read_metadata_resource(), and wraps around read_dentry_tree_recursive()
which is similar to the old read_dentry_tree().

This removes the declaration of a 'struct wim_dentry' on the stack in
read_dentry_tree() and a subsequent copy of the structure, and also
condenses two dentry allocation sites into one.

This also moves the check for '.' and '..' entries to immediately when
reading the dentry tree rather than just before extraction.

10 years agoread_metadata_resource(): Simplify check for short resource
Eric Biggers [Tue, 14 Jan 2014 20:49:28 +0000 (14:49 -0600)]
read_metadata_resource(): Simplify check for short resource

10 years agoread_metadata_resource(): Don't decrement stream refcnts in error path
Eric Biggers [Tue, 14 Jan 2014 20:46:18 +0000 (14:46 -0600)]
read_metadata_resource():  Don't decrement stream refcnts in error path

If a metadata resource could not be fully read, the code would decrement
the reference counts of streams referenced by the tree.  However this
should not be done, as there is no corresponding increment.

10 years agometadata_resource.c: Remove unneeded header
Eric Biggers [Tue, 14 Jan 2014 20:45:44 +0000 (14:45 -0600)]
metadata_resource.c: Remove unneeded header

10 years agowim.c: Remove reopen_wim(), close_wim()
Eric Biggers [Tue, 14 Jan 2014 20:09:19 +0000 (14:09 -0600)]
wim.c: Remove reopen_wim(), close_wim()

10 years agowimlib/header.h: Improve comments
Eric Biggers [Tue, 14 Jan 2014 19:59:24 +0000 (13:59 -0600)]
wimlib/header.h:  Improve comments

10 years agoAdjust documentation for alternate chunk sizes
Eric Biggers [Tue, 14 Jan 2014 19:38:54 +0000 (13:38 -0600)]
Adjust documentation for alternate chunk sizes

10 years agonew_wim_struct(): Use filedes_invalidate()
Eric Biggers [Tue, 14 Jan 2014 18:56:20 +0000 (12:56 -0600)]
new_wim_struct(): Use filedes_invalidate()

10 years agowin32_delete_file_wrapper(): Check for INVALID_FILE_ATTRIBUTES
Eric Biggers [Mon, 13 Jan 2014 20:35:12 +0000 (14:35 -0600)]
win32_delete_file_wrapper(): Check for INVALID_FILE_ATTRIBUTES

10 years agoUpdate NEWS
Eric Biggers [Mon, 13 Jan 2014 20:34:57 +0000 (14:34 -0600)]
Update NEWS

10 years agoSimplify two warning messages
Eric Biggers [Mon, 13 Jan 2014 20:15:57 +0000 (14:15 -0600)]
Simplify two warning messages

10 years agowin32_set_security_descriptor(): Do not request MAXIMUM_ALLOWED
Eric Biggers [Mon, 13 Jan 2014 19:41:43 +0000 (13:41 -0600)]
win32_set_security_descriptor(): Do not request MAXIMUM_ALLOWED

10 years agowin32_apply.c: Work around deleting READONLY files
Eric Biggers [Mon, 13 Jan 2014 19:01:51 +0000 (13:01 -0600)]
win32_apply.c:  Work around deleting READONLY files

10 years agowrite_stream_list(): Do not create threads to compress 1 chunk or less
Eric Biggers [Mon, 13 Jan 2014 06:30:50 +0000 (00:30 -0600)]
write_stream_list(): Do not create threads to compress 1 chunk or less

10 years agoread_wim_lookup_table(): Zero fields of resource spec until known
Eric Biggers [Mon, 13 Jan 2014 06:07:40 +0000 (00:07 -0600)]
read_wim_lookup_table():  Zero fields of resource spec until known

This code was removed by b6034a5dd44709341c46d553b1c0294ec91f13e4
but it was needed to ensure that 'back_to_back_pack' doesn't get set
at the wrong time.

10 years agoFix references to hardlink.c
Eric Biggers [Mon, 13 Jan 2014 05:26:02 +0000 (23:26 -0600)]
Fix references to hardlink.c

10 years agocapture.h: Remove duplicate definitions
Eric Biggers [Mon, 13 Jan 2014 05:24:57 +0000 (23:24 -0600)]
capture.h:  Remove duplicate definitions

10 years agoUpdate version to v1.6.1-BETA
Eric Biggers [Mon, 13 Jan 2014 05:16:42 +0000 (23:16 -0600)]
Update version to v1.6.1-BETA

10 years agoRefactor some of the dentry, inode, and lookup table code
Eric Biggers [Mon, 13 Jan 2014 04:50:01 +0000 (22:50 -0600)]
Refactor some of the dentry, inode, and lookup table code

- Remove hardlink.c.  Its code is now split between inode.c and
  inode_fixup.c.
- Factor inode-related code out of dentry.h and dentry.c and place in
  inode.h and inode.c.
- Move wimlib_reference_resource_files() and wimlib_reference_resources()
  implementations to reference.c.
- Move wimlib_iterate_dir_tree() implementation to iterate_dir.c.
- Move wimlib_reference_template_image() to template.c.
- Move wim_pathname_to_stream() to dentry.c as it deals primarily with
  path walking.
- Remove 'unhashed_streams' member from 'struct wim_lookup_table'.  It
  now is stored separately in 'struct add_image_params'.
- Rename some *resource functions to *stream.
- Rename set_dentry_name() => dentry_set_name().
- Move 'struct ntfs_location' definition to ntfs_3g.h.
- Move UNIX data definitions to new header unix_data.h.
- Move case sensitivity definitions to new header case.h.

10 years agowimlib-imagex: Add --solid as alias for --pack-streams
Eric Biggers [Sun, 12 Jan 2014 23:11:14 +0000 (17:11 -0600)]
wimlib-imagex: Add --solid as alias for --pack-streams

10 years agoread_dentry_tree(): Fix typo in error message
Eric Biggers [Sun, 12 Jan 2014 22:55:30 +0000 (16:55 -0600)]
read_dentry_tree(): Fix typo in error message

10 years agoLZMS: Do not do x86 translations starting in last 16 bytes
Eric Biggers [Sun, 12 Jan 2014 22:49:09 +0000 (16:49 -0600)]
LZMS:  Do not do x86 translations starting in last 16 bytes

The value used before (last 11 bytes) was wrong; based on tests with the
MS implementation no translation can occur following an opcode starting
in the last 16 bytes of a data block.

Tested with two different length opcodes to make sure that it's the start
of the opcode that matters, not the start of the translated address.

10 years agoREADME: COMPRESSION RATIO: Fix capitalization
Eric Biggers [Sun, 12 Jan 2014 21:28:00 +0000 (15:28 -0600)]
README: COMPRESSION RATIO: Fix capitalization

10 years agoREADME: Update "COMPRESSION RATIO" section
Eric Biggers [Sun, 12 Jan 2014 18:38:30 +0000 (12:38 -0600)]
README: Update "COMPRESSION RATIO" section

10 years agowin32_wglob(): Improve setting of errno
Eric Biggers [Sun, 12 Jan 2014 06:47:28 +0000 (00:47 -0600)]
win32_wglob(): Improve setting of errno

10 years agowimfs_readlink(): Return -EINVAL if buf_len == 0, not -ENAMETOOLONG
Eric Biggers [Sun, 12 Jan 2014 06:37:08 +0000 (00:37 -0600)]
wimfs_readlink(): Return -EINVAL if buf_len == 0, not -ENAMETOOLONG

10 years agowim_inode_readlink(): Document
Eric Biggers [Sun, 12 Jan 2014 06:34:43 +0000 (00:34 -0600)]
wim_inode_readlink():  Document

10 years agoexecute_fusermount(): Check status of 'umount' properly
Eric Biggers [Sun, 12 Jan 2014 05:38:37 +0000 (23:38 -0600)]
execute_fusermount(): Check status of 'umount' properly

Code is only reached if fusermount command does not work.

10 years agounmount_timed_out_cb(): Do not check errno if kill() succeeds
Eric Biggers [Sun, 12 Jan 2014 05:25:31 +0000 (23:25 -0600)]
unmount_timed_out_cb():  Do not check errno if kill() succeeds

10 years agolz_sarray: Fix some comments
Eric Biggers [Fri, 10 Jan 2014 16:40:43 +0000 (10:40 -0600)]
lz_sarray:  Fix some comments

10 years agolz_sarray: Performance and memory usage optimizations
Eric Biggers [Fri, 10 Jan 2014 08:02:05 +0000 (02:02 -0600)]
lz_sarray:  Performance and memory usage optimizations

10 years agolz_sarray: Use 16-bit length
Eric Biggers [Thu, 9 Jan 2014 21:04:11 +0000 (15:04 -0600)]
lz_sarray:  Use 16-bit length

This saves 4 bytes of memory per position and only decreases the
compression ratio on very repetitive files (with matches of length >
65535), and even then only slightly.  Performance is not significantly
affected but may be slightly improved due to better use of cache.

10 years agowimlib_iterate_dir_tree(): Canonicalize WIM path
Eric Biggers [Wed, 8 Jan 2014 02:32:39 +0000 (20:32 -0600)]
wimlib_iterate_dir_tree(): Canonicalize WIM path

10 years agoCache compression format in 'struct wim_resource_spec'
Eric Biggers [Wed, 8 Jan 2014 01:10:22 +0000 (19:10 -0600)]
Cache compression format in 'struct wim_resource_spec'

10 years agoUpdate NEWS
Eric Biggers [Wed, 8 Jan 2014 00:23:17 +0000 (18:23 -0600)]
Update NEWS

10 years agowimlib_extract_paths(): Canonicalize WIM paths before using them
Eric Biggers [Wed, 8 Jan 2014 00:14:46 +0000 (18:14 -0600)]
wimlib_extract_paths():  Canonicalize WIM paths before using them

10 years agoexpand_wildcard(): Only recognize WIM_PATH_SEPARATOR
Eric Biggers [Wed, 8 Jan 2014 00:10:10 +0000 (18:10 -0600)]
expand_wildcard(): Only recognize WIM_PATH_SEPARATOR

For consistency with get_dentry(), only treat WIM_PATH_SEPARATOR
characters as path separators.

10 years agodentry.c: Rewrite and document get_dentry()
Eric Biggers [Tue, 7 Jan 2014 23:59:43 +0000 (17:59 -0600)]
dentry.c:  Rewrite and document get_dentry()

Fully document the behavior of get_dentry(), and make paths with trailing
path separators only match directories.

10 years agowrite_stream_list(): Fix comments
Eric Biggers [Tue, 7 Jan 2014 21:11:38 +0000 (15:11 -0600)]
write_stream_list(): Fix comments

10 years agoHandle streams with uncompressed size 4 GiB consistently
Eric Biggers [Tue, 7 Jan 2014 20:33:56 +0000 (14:33 -0600)]
Handle streams with uncompressed size 4 GiB consistently

The read code went to 8-byte chunk entries for uncompressed size >
4294967296, whereas the write code went to 8-byte chunk entries for
uncompressed size >= 4294967296.  Change both to >= 4294967296.
Confirmed that WIMGAPI (Windows 7) seems to have this behavior.

10 years agoread_stream_list(): Spill huge data ranges array onto heap
Eric Biggers [Tue, 7 Jan 2014 19:20:38 +0000 (13:20 -0600)]
read_stream_list():  Spill huge data ranges array onto heap

There can be thousands of streams packed into a single resource, so it's
a good idea to check if the data_ranges array is really small enough to
be allocated on the stack or not, and if not, allocate it on the heap
instead.

For readability and to create a temporary frame for alloca(), place the
relevant code in a new function read_packed_streams().

10 years agov1.6.0 v1.6.0
Eric Biggers [Thu, 2 Jan 2014 21:07:57 +0000 (15:07 -0600)]
v1.6.0

10 years agoimagex-capture.1.in: Minor updates
Eric Biggers [Thu, 2 Jan 2014 21:03:29 +0000 (15:03 -0600)]
imagex-capture.1.in:  Minor updates

10 years agoFix typos
Eric Biggers [Thu, 2 Jan 2014 20:46:24 +0000 (14:46 -0600)]
Fix typos

10 years agoUpdate examples
Eric Biggers [Thu, 2 Jan 2014 20:20:07 +0000 (14:20 -0600)]
Update examples

10 years agoUpdate NEWS
Eric Biggers [Thu, 2 Jan 2014 18:12:28 +0000 (12:12 -0600)]
Update NEWS

10 years agowimlib.h: Group wimlib_extract_path{s,list}()
Eric Biggers [Thu, 2 Jan 2014 17:54:12 +0000 (11:54 -0600)]
wimlib.h: Group wimlib_extract_path{s,list}()

10 years agowimlib.h: Fix docs for version and compression types
Eric Biggers [Thu, 2 Jan 2014 17:50:44 +0000 (11:50 -0600)]
wimlib.h: Fix docs for version and compression types

10 years agowimlib.h: Doxygen fixes
Eric Biggers [Thu, 2 Jan 2014 17:33:25 +0000 (11:33 -0600)]
wimlib.h: Doxygen fixes

10 years agomatch_pattern(): No DEBUG if pattern does not match
Eric Biggers [Thu, 2 Jan 2014 17:16:54 +0000 (11:16 -0600)]
match_pattern(): No DEBUG if pattern does not match

10 years agolzx-compress.c: Remove unneeded headers
Eric Biggers [Thu, 2 Jan 2014 17:08:39 +0000 (11:08 -0600)]
lzx-compress.c: Remove unneeded headers

10 years agoxpress-compress.c: Remove unneeded includes
Eric Biggers [Thu, 2 Jan 2014 17:01:24 +0000 (11:01 -0600)]
xpress-compress.c: Remove unneeded includes

10 years agolz_sarray_update_salink(): Only take rank and link array as input
Eric Biggers [Thu, 2 Jan 2014 16:49:56 +0000 (10:49 -0600)]
lz_sarray_update_salink(): Only take rank and link array as input

10 years agocompute_inverse_suffix_array(): Use r for rank, not i
Eric Biggers [Thu, 2 Jan 2014 16:34:00 +0000 (10:34 -0600)]
compute_inverse_suffix_array(): Use r for rank, not i

10 years agoRemove unused LZ_DEBUG() macro
Eric Biggers [Thu, 2 Jan 2014 16:32:21 +0000 (10:32 -0600)]
Remove unused LZ_DEBUG() macro

10 years agolz_optimal.h: Minor comment fixes
Eric Biggers [Thu, 2 Jan 2014 16:24:03 +0000 (10:24 -0600)]
lz_optimal.h: Minor comment fixes

10 years agolz_optimal.h: Fix typedefs
Eric Biggers [Thu, 2 Jan 2014 16:15:54 +0000 (10:15 -0600)]
lz_optimal.h:  Fix typedefs

10 years agolz_optimal.h: Move struct lz_match_chooser towards top
Eric Biggers [Thu, 2 Jan 2014 16:13:16 +0000 (10:13 -0600)]
lz_optimal.h:  Move struct lz_match_chooser towards top

10 years agoimagex: set_compress_slow(): Remove unused variable
Eric Biggers [Thu, 2 Jan 2014 16:00:06 +0000 (10:00 -0600)]
imagex: set_compress_slow(): Remove unused variable

10 years agolzms-compress.c: Fix initialization of lzms_default
Eric Biggers [Thu, 2 Jan 2014 15:59:20 +0000 (09:59 -0600)]
lzms-compress.c: Fix initialization of lzms_default

10 years agolzms-compress.c: Remove unused constant
Eric Biggers [Thu, 2 Jan 2014 15:57:07 +0000 (09:57 -0600)]
lzms-compress.c: Remove unused constant

10 years agolzms-compress.c: Remove unused code for lzms_fast_encode()
Eric Biggers [Thu, 2 Jan 2014 15:55:50 +0000 (09:55 -0600)]
lzms-compress.c:  Remove unused code for lzms_fast_encode()

10 years agolzms-decompress.c: Fix indentation
Eric Biggers [Thu, 2 Jan 2014 07:08:10 +0000 (01:08 -0600)]
lzms-decompress.c:  Fix indentation

10 years agoUpdate references to LZMS compressor
Eric Biggers [Thu, 2 Jan 2014 06:51:32 +0000 (00:51 -0600)]
Update references to LZMS compressor

10 years agolzms_init_compressor(): Do not zero end of window
Eric Biggers [Thu, 2 Jan 2014 06:43:18 +0000 (00:43 -0600)]
lzms_init_compressor(): Do not zero end of window

10 years agoAdd wimlib_get_compressor_needed_memory()
Eric Biggers [Thu, 2 Jan 2014 06:28:48 +0000 (00:28 -0600)]
Add wimlib_get_compressor_needed_memory()

10 years agocompress_parallel.c: Use 1 buffer per thread if chunks are big
Eric Biggers [Thu, 2 Jan 2014 05:11:59 +0000 (23:11 -0600)]
compress_parallel.c:  Use 1 buffer per thread if chunks are big

10 years agoLZMS: Accelerate slot-finding
Eric Biggers [Thu, 2 Jan 2014 04:54:03 +0000 (22:54 -0600)]
LZMS:  Accelerate slot-finding

10 years agoUpdate LZMS compressor
Eric Biggers [Thu, 2 Jan 2014 01:54:32 +0000 (19:54 -0600)]
Update LZMS compressor

10 years agoFix error string for WIMLIB_ERR_INVALID_COMPRESSION_TYPE
Eric Biggers [Wed, 1 Jan 2014 22:21:29 +0000 (16:21 -0600)]
Fix error string for WIMLIB_ERR_INVALID_COMPRESSION_TYPE

10 years agoReplace num_fast_bytes => nice_match_length
Eric Biggers [Wed, 1 Jan 2014 21:43:19 +0000 (15:43 -0600)]
Replace num_fast_bytes => nice_match_length

There is no binary tree match-finder anymore, so 'nice_match_length'
makes more sense.

10 years agolz_sarray.{c,h}: Cleanup, better comments
Eric Biggers [Wed, 1 Jan 2014 21:39:22 +0000 (15:39 -0600)]
lz_sarray.{c,h}:  Cleanup, better comments

10 years agoUse BSD-style license on selected files
Eric Biggers [Wed, 1 Jan 2014 17:48:29 +0000 (11:48 -0600)]
Use BSD-style license on selected files

10 years agolz_optimal.h: Cleanup, better comments
Eric Biggers [Wed, 1 Jan 2014 17:34:14 +0000 (11:34 -0600)]
lz_optimal.h: Cleanup, better comments

10 years agoUpdate LZMS match-choosing
Eric Biggers [Mon, 30 Dec 2013 06:52:50 +0000 (00:52 -0600)]
Update LZMS match-choosing

10 years agoFactor out LZ match-choosing code
Eric Biggers [Mon, 30 Dec 2013 04:50:45 +0000 (22:50 -0600)]
Factor out LZ match-choosing code

10 years agoUpdate LZMS LRU queue handling
Eric Biggers [Mon, 30 Dec 2013 02:59:08 +0000 (20:59 -0600)]
Update LZMS LRU queue handling

10 years agoFix test for length 2 matches
Eric Biggers [Mon, 30 Dec 2013 02:02:50 +0000 (20:02 -0600)]
Fix test for length 2 matches

10 years agoSeparate suffix array match-finder from LZX compressor
Eric Biggers [Mon, 30 Dec 2013 01:37:39 +0000 (19:37 -0600)]
Separate suffix array match-finder from LZX compressor

10 years agoimagex-update.1.in: Add note about setting ignore case
Eric Biggers [Tue, 31 Dec 2013 19:48:57 +0000 (13:48 -0600)]
imagex-update.1.in:  Add note about setting ignore case

10 years agomkwinpeimg.1: Add suggestion to use wimlib-imagex
Eric Biggers [Tue, 31 Dec 2013 19:43:28 +0000 (13:43 -0600)]
mkwinpeimg.1:  Add suggestion to use wimlib-imagex

10 years agomkwinpeimg: Make compatible with Syslinux version 6
Eric Biggers [Tue, 31 Dec 2013 19:36:39 +0000 (13:36 -0600)]
mkwinpeimg: Make compatible with Syslinux version 6

10 years agoimagex_progress_func(): Fix variable
Eric Biggers [Tue, 31 Dec 2013 00:13:36 +0000 (18:13 -0600)]
imagex_progress_func(): Fix variable

10 years agoFix completed_streams of write streams progress and update docs
Eric Biggers [Mon, 30 Dec 2013 22:58:32 +0000 (16:58 -0600)]
Fix completed_streams of write streams progress and update docs

10 years agoread_utf8_file_contents(): Move check for BOM here
Eric Biggers [Mon, 30 Dec 2013 14:45:06 +0000 (08:45 -0600)]
read_utf8_file_contents(): Move check for BOM here

10 years agoparse_path_list_file(): Ignore UTF-8 BOM
Eric Biggers [Mon, 30 Dec 2013 08:50:20 +0000 (02:50 -0600)]
parse_path_list_file(): Ignore UTF-8 BOM

10 years agowimlib_vmsg(): Use correct error string buffer length
Eric Biggers [Mon, 30 Dec 2013 08:39:40 +0000 (02:39 -0600)]
wimlib_vmsg():  Use correct error string buffer length

10 years agowin32_set_security_descriptor(): Check handle before closing
Eric Biggers [Mon, 30 Dec 2013 07:36:48 +0000 (01:36 -0600)]
win32_set_security_descriptor(): Check handle before closing

10 years agowildcard.c: Don't use broken PathMatchSpec()
Eric Biggers [Mon, 30 Dec 2013 07:21:24 +0000 (01:21 -0600)]
wildcard.c:  Don't use broken PathMatchSpec()

10 years agoread_path_list_file(): Handle missing terminal newline
Eric Biggers [Sun, 29 Dec 2013 21:49:34 +0000 (15:49 -0600)]
read_path_list_file(): Handle missing terminal newline

10 years agoextract.c: Fix short name reordering
Eric Biggers [Sun, 29 Dec 2013 21:41:23 +0000 (15:41 -0600)]
extract.c:  Fix short name reordering

10 years agoread_wim_lookup_table(): Correctly get uncompressed size of packs
Eric Biggers [Sun, 29 Dec 2013 20:58:48 +0000 (14:58 -0600)]
read_wim_lookup_table():  Correctly get uncompressed size of packs

10 years agoMisc fixes
Eric Biggers [Sun, 29 Dec 2013 20:21:10 +0000 (14:21 -0600)]
Misc fixes

10 years agoxml.c: Add support for PKEYCONFIGVERSION
Eric Biggers [Sun, 29 Dec 2013 18:12:04 +0000 (12:12 -0600)]
xml.c:  Add support for PKEYCONFIGVERSION

10 years agoReturn new error code when trying to open encrypted WIM
Eric Biggers [Sun, 29 Dec 2013 17:39:54 +0000 (11:39 -0600)]
Return new error code when trying to open encrypted WIM