From 21d7154b07a873476a9ad5899e1db9729d4eb410 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 14 Mar 2017 13:59:09 +0100 Subject: dosfs: Fix msdos_utf8_normalize_and_fold() It is all right in case the result uses the full destination buffer. Without this fix the handling of a maximum 8.3 short file name is broken. Close #2928. --- cpukit/libfs/src/dosfs/msdos_conv_utf8.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'cpukit') diff --git a/cpukit/libfs/src/dosfs/msdos_conv_utf8.c b/cpukit/libfs/src/dosfs/msdos_conv_utf8.c index ddf2fdbaa7..cc5c0271a7 100644 --- a/cpukit/libfs/src/dosfs/msdos_conv_utf8.c +++ b/cpukit/libfs/src/dosfs/msdos_conv_utf8.c @@ -222,10 +222,10 @@ static int msdos_utf8_normalize_and_fold( ); if ( result >= 0 ) { - if ( result < unicode_buf_size ) { + if ( result <= unicode_buf_size ) { unicodes_to_reencode = result; } else { - unicodes_to_reencode = unicode_buf_size - 1; + unicodes_to_reencode = unicode_buf_size; eno = ENOMEM; } -- cgit v1.2.3