[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#833238: Do not set CONFIG_FAT_DEFAULT_IOCHARSET="utf8", use FAT_DEFAULT_UTF8 instead



Control: tag -1 pending

On Tue, 2016-08-02 at 07:50 +0200, Martin Pitt wrote:
[...]
> So I suggest to set
> 
>   CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
>   FAT_DEFAULT_UTF8=y
> 
> instead.

I think I get it.  Is this an accurate summary?

commit 0e156c15e31ac4f3e160a6ac262b172d0390d7e8
Author: Ben Hutchings <ben@decadent.org.uk>
Date:   Fri Aug 26 02:31:50 2016 +0100

    fat: Mitigate the lack of UTF-8 case folding
    
    FAT has to convert between Linux filenames ('iocharset' encoding,
    should be UTF-8 today) and native filenames (UTF-16 for long names,
    'codepage' encoding for short names).  And it has to do case
    folding in multiple encodings.  Unfortunately Linux doesn't
    implement case-folding for UTF-8, resulting in inconsistent name
    lookup behaviour as shown in bug #833238.
    
    The 'utf8' option makes FAT assume the Linux filename encoding is
    UTF-8, regardless of the 'iocharset' encoding.  Enabling this and
    setting iocharset=ascii mitigates the problems by enabling case-
    folding for the ASCII subset.
    
    Make that the default by enabling FAT_DEFAULT_UTF8 and setting
    FAT_DEFAULT_IOCHARSET to "ascii".

Ben.

-- 
Ben Hutchings
Editing code like this is akin to sticking plasters on the bleeding
stump
of a severed limb. - me, 29 June 1999

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: