]> wimlib.net Git - wimlib/commit
Character encoding and string conversion updates
authorEric Biggers <ebiggers3@gmail.com>
Wed, 22 Jun 2016 01:01:52 +0000 (20:01 -0500)
committerEric Biggers <ebiggers3@gmail.com>
Wed, 22 Jun 2016 01:02:48 +0000 (20:02 -0500)
commiteed3c18f17528197b914958a07f58065fe01aca4
treeb5223387a2ffa51fd00c230009f68b6439471fd5
parent9f56f9f091155065173712c3f254945fd8224511
Character encoding and string conversion updates

- Allow unpaired surrogates when translating between "UTF-8" and
  "UTF-16LE".  This allows Windows-style filenames to be processed
  losslessly on UNIX-like systems, even if they are not valid UTF-16LE.

- Implement UTF-8 and UTF-16LE codecs ourselves and drop the iconv
  requirement.  This was necessary to allow surrogate codepoints, but it
  also provides better performance and actually results in *fewer* lines
  of code and a slightly smaller binary.

- Drop support for multibyte encodings other than UTF-8 on UNIX-like
  systems.  It is probably not worth the effort to support such
  encodings.  Interestingly, the support was entirely broken before
  v1.9.1, yet no one ever complained...
23 files changed:
.gitignore
Makefile.am
configure.ac
doc/man1/wimlib-imagex-capture.1
doc/man1/wimlib-imagex.1
include/wimlib.h
include/wimlib/encoding.h
include/wimlib/ntfs_3g.h
include/wimlib_tchar.h
m4/iconv.m4 [deleted file]
programs/imagex.c
src/dentry.c
src/encoding.c
src/error.c
src/iterate_dir.c
src/mount_image.c
src/ntfs-3g_apply.c
src/registry.c
src/reparse.c
src/wim.c
src/xml.c
tools/windeps/Makefile
tools/windeps/sha256sums