2004-01-27 Elena Zannoni <ezannoni@redhat.com>
[deliverable/binutils-gdb.git] / readline / vi_mode.c
index 5d146b3f705604d4668f85c722a2387d31a0b7ac..89303644c59244eb69cff6f271f140fb74757f92 100644 (file)
@@ -680,7 +680,8 @@ _rl_vi_change_mbchar_case (count)
      int count;
 {
   wchar_t wc;
-  char mb[MB_LEN_MAX];
+  char mb[MB_LEN_MAX+1];
+  int mblen;
   mbstate_t ps;
 
   memset (&ps, 0, sizeof (mbstate_t));
@@ -703,7 +704,9 @@ _rl_vi_change_mbchar_case (count)
       /* Vi is kind of strange here. */
       if (wc)
        {
-         wctomb (mb, wc);
+         mblen = wctomb (mb, wc);
+         if (mblen >= 0)
+           mb[mblen] = '\0';
          rl_begin_undo_group ();
          rl_delete (1, 0);
          rl_insert_text (mb);
This page took 0.022982 seconds and 4 git commands to generate.