Bug fixes
-
When using
--input-listand directory paths in that list contained trailing slashes,mkdwarfswould create an additional directory with an empty name below that path. When mounting such an image, trying to traverse the file system would result in an I/O error when processing that empty-named directory. This has been fixed by stripping trailing slashes. Another change was made to detect and ignore empty-named directory entries when reading file system images to hide the erroneously created extra directories and allow "buggy" images to be mounted without errors. Fixes GitHub issue [#370]. -
When running
dwarfsin foreground more, the file system was not properly unmounted when the process was terminated (e.g., withCtrl+C). This bug was introduced with the FUSE driver refactoring in 0.15.2. This was fixed by canonicalizing the mount point path immediately after parsing. -
DWARFS_LOG_MEMORY_USAGEwas broken due to prematurely closing the log file before anything was logged. This has been fixed. -
The metadata analysis output from
dwarfsckwas not consistently using the same order for "plain" and "compact" string table fields. This has been fixed. -
The debug output for similarity ordering contained a stray closing parenthesis. This has been fixed.
-
A workaround was implemented for a benign race condition in OpenSLL that would occasionally trigger TSAN warnings.
Build
- Several dependencies were updated, the static release binaries are now built using Clang 22 with GCC 16's libstdc++.
Full Changelog: https://github.com/mhx/dwarfs/compare/v0.15.3...v0.15.4