Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6: fat: Check s_dirt in fat_sync_fs() vfat: change the default from shortname=lower to shortname=mixed fat/nls: Fix handling of utf8 invalid char
This commit is contained in:
@@ -124,10 +124,10 @@ int utf8s_to_utf16s(const u8 *s, int len, wchar_t *pwcs)
|
||||
while (*s && len > 0) {
|
||||
if (*s & 0x80) {
|
||||
size = utf8_to_utf32(s, len, &u);
|
||||
if (size < 0) {
|
||||
/* Ignore character and move on */
|
||||
size = 1;
|
||||
} else if (u >= PLANE_SIZE) {
|
||||
if (size < 0)
|
||||
return -EINVAL;
|
||||
|
||||
if (u >= PLANE_SIZE) {
|
||||
u -= PLANE_SIZE;
|
||||
*op++ = (wchar_t) (SURROGATE_PAIR |
|
||||
((u >> 10) & SURROGATE_BITS));
|
||||
|
Reference in New Issue
Block a user