diff options
Diffstat (limited to 'fs/cifs/readdir.c')
-rw-r--r-- | fs/cifs/readdir.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c index a090bbe6ee29..e2bbc683e018 100644 --- a/fs/cifs/readdir.c +++ b/fs/cifs/readdir.c | |||
@@ -647,10 +647,11 @@ static int cifs_filldir(char *find_entry, struct file *file, filldir_t filldir, | |||
647 | 647 | ||
648 | name.name = scratch_buf; | 648 | name.name = scratch_buf; |
649 | name.len = | 649 | name.len = |
650 | cifs_from_ucs2((char *)name.name, (__le16 *)de.name, | 650 | cifs_from_utf16((char *)name.name, (__le16 *)de.name, |
651 | UNICODE_NAME_MAX, | 651 | UNICODE_NAME_MAX, |
652 | min(de.namelen, (size_t)max_len), nlt, | 652 | min_t(size_t, de.namelen, |
653 | cifs_sb->mnt_cifs_flags & | 653 | (size_t)max_len), nlt, |
654 | cifs_sb->mnt_cifs_flags & | ||
654 | CIFS_MOUNT_MAP_SPECIAL_CHR); | 655 | CIFS_MOUNT_MAP_SPECIAL_CHR); |
655 | name.len -= nls_nullsize(nlt); | 656 | name.len -= nls_nullsize(nlt); |
656 | } else { | 657 | } else { |