From: Bram Moolenaar Date: Wed, 23 Aug 2017 21:51:58 +0000 (+0200) Subject: patch 8.0.0992: terminal title is wrong when 'encoding' is DBCS X-Git-Tag: v8.0.0992 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=33d66bd9fa0e1b3fbba33d6a1a0609915ac79441;p=vim patch 8.0.0992: terminal title is wrong when 'encoding' is DBCS Problem: Terminal title is wrong when 'encoding' is DBCS. Solution: Convert the title from DBCS to utf-8. (Yasuhiro Matsumoto, closes #2009) --- diff --git a/src/terminal.c b/src/terminal.c index 67c065ced..c559d1173 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -1837,6 +1837,24 @@ handle_settermprop( * displayed */ if (*skipwhite((char_u *)value->string) == NUL) term->tl_title = NULL; +#ifdef WIN3264 + else if (!enc_utf8 && enc_codepage > 0) + { + WCHAR *ret = NULL; + int length = 0; + + MultiByteToWideChar_alloc(CP_UTF8, 0, + (char*)value->string, STRLEN(value->string), + &ret, &length); + if (ret != NULL) + { + WideCharToMultiByte_alloc(enc_codepage, 0, + ret, length, (char**)&term->tl_title, + &length, 0, 0); + vim_free(ret); + } + } +#endif else term->tl_title = vim_strsave((char_u *)value->string); vim_free(term->tl_status_text); diff --git a/src/version.c b/src/version.c index a0ce86d80..1006ca0f0 100644 --- a/src/version.c +++ b/src/version.c @@ -769,6 +769,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 992, /**/ 991, /**/