]> granicus.if.org Git - vim/commitdiff
Fix: terminal title not properly restured when there are multi-byte
authorBram Moolenaar <Bram@vim.org>
Sun, 25 Jul 2010 20:30:20 +0000 (22:30 +0200)
committerBram Moolenaar <Bram@vim.org>
Sun, 25 Jul 2010 20:30:20 +0000 (22:30 +0200)
characters.  (partly by James Vega)

runtime/doc/todo.txt
src/os_unix.c

index 470de065e0050019fad84f89f1eb72edc4642b68..e6f5883f61aa9a0bd0455c457f98185a67ee9676 100644 (file)
@@ -30,11 +30,7 @@ be worked on, but only if you sponsor Vim development.  See |sponsor|.
                                                        *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.
index be065f83578b48fca9f8035243e9e7fd16c2b98f..4fb3d1ad011240818e7cbca2d3e0e8055b9a4353 100644 (file)
@@ -1821,15 +1821,19 @@ get_x11_thing(get_title, test_only)
            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 @@ mch_settitle(title, icon)
 #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)