File tree Expand file tree Collapse file tree
src/Core/SecureFolderFS.Core.FileSystem/Helpers/Paths/Abstract Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -31,7 +31,10 @@ public static ReadOnlySpan<char> RemoveCiphertextExtension(string ciphertextName
3131 ? ciphertextName . AsSpan ( 0 , ciphertextName . Length - Constants . Names . ENCRYPTED_FILE_EXTENSION . Length )
3232 : ciphertextName . AsSpan ( ) ;
3333
34- if ( OperatingSystem . IsAndroid ( ) || OperatingSystem . IsIOS ( ) || OperatingSystem . IsMacOS ( ) || OperatingSystem . IsMacCatalyst ( ) )
34+ // Only normalize if needed. APFS/Android layers NFD-decompose Base4K codepoints,
35+ // but Dokany/WinFsp deliver names in a form where NFC recomposition breaks lookup.
36+ // IsNormalized() lets the string itself determine whether normalization is safe.
37+ if ( ! nameWithoutExtension . IsNormalized ( NormalizationForm . FormC ) )
3538 {
3639 var normalizedLength = nameWithoutExtension . GetNormalizedLength ( NormalizationForm . FormC ) ;
3740 var normalized = new char [ normalizedLength ] ;
You can’t perform that action at this time.
0 commit comments