From d6948bf356a99f96305298d19d76c98010b380f1 Mon Sep 17 00:00:00 2001 From: Piotr Caban Date: Wed, 10 Aug 2016 17:18:05 +0200 Subject: [PATCH] msvcrt: Add support for multibyte characters in _Strftime. Signed-off-by: Piotr Caban Signed-off-by: Alexandre Julliard --- dlls/msvcrt/tests/time.c | 10 ++++++++++ dlls/msvcrt/time.c | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/dlls/msvcrt/tests/time.c b/dlls/msvcrt/tests/time.c index e26648d1dc3..6865e3d2691 100644 --- a/dlls/msvcrt/tests/time.c +++ b/dlls/msvcrt/tests/time.c @@ -746,6 +746,16 @@ static void test_strftime(void) ok(retA == 17, "expected 17, got %ld\n", retA); ok(!strcmp(bufA, "02/30/70 00:00:00"), "got %s\n", bufA); } + + if(!setlocale(LC_ALL, "Japanese_Japan.932")) { + win_skip("Japanese_Japan.932 locale not available\n"); + return; + } + + /* test with multibyte character */ + retA = strftime(bufA, 256, "\x82%c", gmt_tm); + ok(retA == 3, "expected 3, got %ld\n", retA); + ok(!strcmp(bufA, "\x82%c"), "got %s\n", bufA); } static void test_asctime(void) diff --git a/dlls/msvcrt/time.c b/dlls/msvcrt/time.c index e6e3eeef3ae..ed88e3cd8c4 100644 --- a/dlls/msvcrt/time.c +++ b/dlls/msvcrt/time.c @@ -1078,6 +1078,11 @@ MSVCRT_size_t CDECL _Strftime(char *str, MSVCRT_size_t max, const char *format, for(ret=0; *format && ret