Fix: terminal title not properly restured when there are multi-byte
characters. (partly by James Vega)
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 470de06..e6f5883 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -30,11 +30,7 @@
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Restoring terminal title in gnome-terminal causes a beep. Saved value
-contains garbage? Ukranian language characters. 'enc' and 'tenc' are utf-8.
-(Anatoli Sakhnik, 2010 Jul 24)
-Using ":set titlestring=abc" with non-ascii characters also fails.
-Patch by James Vega, 2010 Jul 25.
+Access to free memory with :redir command. (Dominique Pelle, 2010 Jul 25)
Patch for :find completion. (Nazri Ramliy)
But I prefer to keep term.h and include/term.h Nazri will work on it.
diff --git a/src/os_unix.c b/src/os_unix.c
index be065f8..4fb3d1a 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -1821,15 +1821,19 @@
retval = TRUE;
if (!test_only)
{
-#ifdef FEAT_XFONTSET
- if (text_prop.encoding == XA_STRING)
+#if defined(FEAT_XFONTSET) || defined(FEAT_MBYTE)
+ if (text_prop.encoding == XA_STRING
+# ifdef FEAT_MBYTE
+ && !has_mbyte
+# endif
+ )
{
#endif
if (get_title)
oldtitle = vim_strsave((char_u *)text_prop.value);
else
oldicon = vim_strsave((char_u *)text_prop.value);
-#ifdef FEAT_XFONTSET
+#if defined(FEAT_XFONTSET) || defined(FEAT_MBYTE)
}
else
{
@@ -2020,7 +2024,7 @@
#endif
/*
- * Note: if "t_TS" is set, title is set with escape sequence rather
+ * Note: if "t_ts" is set, title is set with escape sequence rather
* than x11 calls, because the x11 calls don't always work
*/
if ((type || *T_TS != NUL) && title != NULL)