cifs: fix cifsConvertToUCS() for the mapchars case
authorJeff Layton <jlayton@redhat.com>
Tue, 17 May 2011 19:28:21 +0000 (15:28 -0400)
committerSteve French <sfrench@us.ibm.com>
Tue, 17 May 2011 20:54:04 +0000 (20:54 +0000)
commit11379b5e33950048ad66825da7f462b0d0da9d73
tree97b6089e15c4ce3daadc7633776dca952e883e6b
parent221d1d797202984cb874e3ed9f1388593d34ee22
cifs: fix cifsConvertToUCS() for the mapchars case

As Metze pointed out, commit 84cdf74e broke mapchars option:

    Commit "cifs: fix unaligned accesses in cifsConvertToUCS"
    (84cdf74e8096a10dd6acbb870dd404b92f07a756) does multiple steps
    in just one commit (moving the function and changing it without
    testing).

    put_unaligned_le16(temp, &target[j]); is never called for any
    codepoint the goes via the 'default' switch statement. As a result
    we put just zero (or maybe uninitialized) bytes into the target
    buffer.

His proposed patch looks correct, but doesn't apply to the current head
of the tree. This patch should also fix it.

Cc: <stable@kernel.org> # .38.x: 581ade4: cifs: clean up various nits in unicode routines (try #2)
Reported-by: Stefan Metzmacher <metze@samba.org>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
fs/cifs/cifs_unicode.c