From 8b55d8d13c20aa58bf3c4f2df7a096b021500aee Mon Sep 17 00:00:00 2001 From: Moritz Gmeiner Date: Thu, 31 Jul 2025 00:22:16 +0200 Subject: [PATCH] strip 0 terminator from long name --- fat-bits/src/dir.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/fat-bits/src/dir.rs b/fat-bits/src/dir.rs index 88cd3e6..253506f 100644 --- a/fat-bits/src/dir.rs +++ b/fat-bits/src/dir.rs @@ -469,6 +469,13 @@ impl LongFilenameBuf { name = &name[..name.len() - 1]; } + if name.last() == Some(&0) { + name = &name[..name.len() - 1]; + } else { + // no null terminator only for names that are multiples of 13, i.e. perfectly fit + assert_eq!(name.len(), 13); + } + assert!(!name.is_empty()); self.extend_name(name);