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 67c065c..c559d11 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -1837,6 +1837,24 @@
* 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 a0ce86d..1006ca0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 992,
+/**/
991,
/**/
990,