multibyte character
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2556
35c25a1d-7b9e-4130-9fde-
d3aeb78583b8
long instead of an unsigned int. (DLR)
cwd_tab_completion(), browser_init()
- Rename variable next to nextdir to avoid confusion. (DLR)
+ input_tab()
+ - Make sure that we don't set *place to the middle of a
+ multibyte character. (DLR)
do_browser()
- Don't treat NANO_CANCEL_KEY as NANO_EXIT_KEY anymore, for
consistency. (DLR)
charmove(buf + common_len, buf + *place,
buflen - *place + 1);
charcpy(buf, mzero, common_len);
- *place = common_len;
+
+ /* Make sure that we don't advance the cursor to the middle
+ * of a multibyte character. */
+ *place = mbstrnlen(buf, common_len);
} else if (*lastwastab == FALSE || num_matches < 2)
*lastwastab = TRUE;
else {