From 622aa537eea8d520636a4e98461f086f377f068a Mon Sep 17 00:00:00 2001 From: Jujuforce Date: Mon, 6 Jul 2026 22:06:38 +0200 Subject: [PATCH] fix: extract exFAT OPTION containers that contain empty files exfat-fs 0.1.3's StreamExtensionEntry::valid() rejects any entry with FirstCluster < 2, but a zero-length file (or empty dir) legitimately has FirstCluster = 0 / DataLength = 0 per the exFAT spec. The parser returned InvalidStreamExtension and aborted the *entire* directory tree the moment it hit one empty file, so real OPTION (.opt) containers failed to extract with: WARNING: Failed to extract exfat contents: InvalidFileEntry(InvalidStreamExtension) even though unsega/7-Zip read them fine. 0.1.3 is the latest published release and its `main` has an incompatible public API, so override the dependency via [patch.crates-io] with a fork branch that is the 0.1.3 release plus only the one-function fix (gate the cluster check on DataLength: 0 -> FirstCluster must be 0, else >= 2). Regenerate the synthetic OPTION fixture with a zero-byte file so tests/e2e.rs reproduces the bug: without the patch it fails with InvalidStreamExtension; with it, extraction succeeds. Verified against a real 191 MB OPTION container (1602 files / 1217 dirs, empty file written as 0 bytes) and the full suite. Co-Authored-By: Claude Opus 4.8 --- Cargo.lock | 3 +-- Cargo.toml | 10 ++++++++++ fixtures/TEST_T001_20240101120000_0.opt | Bin 3149824 -> 3149824 bytes 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f45bf0a..e8a9cef 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -481,8 +481,7 @@ dependencies = [ [[package]] name = "exfat-fs" version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cbdfa8ecf36ab2341032974d3644a56f1e40c9da3b643118492cf97f357f3c5" +source = "git+https://github.com/jujuforce/exfat-fs.git?rev=7067f6afe3c21d9c737288475b29e5dae790e206#7067f6afe3c21d9c737288475b29e5dae790e206" dependencies = [ "bitflags", "bytemuck", diff --git a/Cargo.toml b/Cargo.toml index 0ffb8e9..4b4ff39 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,3 +21,13 @@ cipher = { version = "0.4.4", features = ["alloc"] } lto = "thin" codegen-units = 1 strip = "none" + +# exfat-fs 0.1.3 rejects empty (zero-length) files/dirs: its +# StreamExtensionEntry::valid() treats FirstCluster < 2 as invalid, but an +# empty file legitimately has FirstCluster = 0 / DataLength = 0. That aborts +# the whole extraction the moment an OPTION container contains any 0-byte file. +# Until the fix lands in a published release, override with a fork branch that +# is the 0.1.3 release plus only that one-function fix (identical public API). +# See https://github.com/jujuforce/exfat-fs/tree/v0.1.3-empty-file-fix +[patch.crates-io] +exfat-fs = { git = "https://github.com/jujuforce/exfat-fs.git", rev = "7067f6afe3c21d9c737288475b29e5dae790e206" } diff --git a/fixtures/TEST_T001_20240101120000_0.opt b/fixtures/TEST_T001_20240101120000_0.opt index 456096f8be21444b336cd38351b2b63ec4ba8edc..ae139e95040f525e31418f94fe1552c64529af05 100644 GIT binary patch delta 19551 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 OEQW9`hHx&Xa4(>%X~=8< delta 19551 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 OEQW9`hHx&Xa4(?RT^CLO