]> git.wh0rd.org Git - nano.git/commitdiff
tweak do_next_word() and do_prev_word() to make sure they don't parse
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 15 Jan 2005 15:05:20 +0000 (15:05 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 15 Jan 2005 15:05:20 +0000 (15:05 +0000)
the same multibyte character twice

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2274 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

src/nano.c

index 6ca25b221f612b52d917ea4041f08d92dc0fb454..59a73cf112312776e36710ced10786c5cc3cd3f2 100644 (file)
@@ -1344,6 +1344,9 @@ void do_next_word(void)
     }
 
     /* Move forward until we find the first letter of the next word. */
+    if (current->data[current_x] != '\0')
+       current_x += char_mb_len;
+
     for (; current != NULL; current = current->next) {
        while (current->data[current_x] != '\0') {
            char_mb_len = parse_mbchar(current->data + current_x,
@@ -1416,6 +1419,11 @@ void do_prev_word(void)
 
     /* Move backward until we find the last letter of the previous
      * word. */
+    if (current_x == 0)
+       begin_line = TRUE;
+    else
+       current_x = move_mbleft(current->data, current_x);
+
     for (; current != NULL; current = current->prev) {
        while (!begin_line) {
            char_mb_len = parse_mbchar(current->data + current_x,