Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41f0c02e authored by Namjae Jeon's avatar Namjae Jeon Committed by Linus Torvalds
Browse files

fat: clean up xlate_to_uni()



xlate_to_uni() is called by vfat_build_slots() with sbi->nls_io as the
final argument.  nls_io can never be null at this point because the
check is already being done in fat_fill_super() wherein the mount fails
if it is null.

Signed-off-by: default avatarNamjae Jeon <linkinjeon@gmail.com>
Signed-off-by: default avatarRavishankar N <cyberax82@gmail.com>
Acked-by: default avatarOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9eab0a78
Loading
Loading
Loading
Loading
+36 −47
Original line number Diff line number Diff line
@@ -521,11 +521,9 @@ xlate_to_uni(const unsigned char *name, int len, unsigned char *outname,

		op = &outname[*outlen * sizeof(wchar_t)];
	} else {
		if (nls) {
		for (i = 0, ip = name, op = outname, *outlen = 0;
			 i < len && *outlen <= FAT_LFN_LEN;
			     *outlen += 1)
			{
			 *outlen += 1) {
			if (escape && (*ip == ':')) {
				if (i > len - 5)
					return -EINVAL;
@@ -552,7 +550,9 @@ xlate_to_uni(const unsigned char *name, int len, unsigned char *outname,
				ip += 5;
				i += 5;
			} else {
					if ((charlen = nls->char2uni(ip, len - i, (wchar_t *)op)) < 0)
				charlen = nls->char2uni(ip, len - i,
									(wchar_t *)op);
				if (charlen < 0)
					return -EINVAL;
				ip += charlen;
				i += charlen;
@@ -561,17 +561,6 @@ xlate_to_uni(const unsigned char *name, int len, unsigned char *outname,
		}
		if (i < len)
			return -ENAMETOOLONG;
		} else {
			for (i = 0, ip = name, op = outname, *outlen = 0;
			     i < len && *outlen <= FAT_LFN_LEN;
			     i++, *outlen += 1)
			{
				*op++ = *ip++;
				*op++ = 0;
			}
			if (i < len)
				return -ENAMETOOLONG;
		}
	}

	*longlen = *outlen;