| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.779 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.779 |
| Problem: Using CTRL-A in a line without a number moves the cursor. May |
| cause a crash when at the start of the line. (Urtica Dioica) |
| Solution: Do not move the cursor if no number was changed. |
| Files: src/ops.c |
| |
| |
| |
| |
| |
| *** 5404,5409 **** |
| --- 5404,5410 ---- |
| int lnum = curwin->w_cursor.lnum; |
| int lnume = curwin->w_cursor.lnum; |
| int startcol; |
| + int did_change = FALSE; |
| |
| dohex = (vim_strchr(curbuf->b_p_nf, 'x') != NULL); /* "heX" */ |
| dooct = (vim_strchr(curbuf->b_p_nf, 'o') != NULL); /* "Octal" */ |
| |
| *** 5547,5552 **** |
| --- 5548,5554 ---- |
| #endif |
| } |
| curwin->w_cursor.col = col; |
| + did_change = TRUE; |
| (void)del_char(FALSE); |
| ins_char(firstdigit); |
| } |
| |
| *** 5619,5624 **** |
| --- 5621,5627 ---- |
| * Delete the old number. |
| */ |
| curwin->w_cursor.col = col; |
| + did_change = TRUE; |
| todel = length; |
| c = gchar_cursor(); |
| |
| |
| *** 5713,5719 **** |
| RLADDSUBFIX(ptr); |
| #endif |
| } |
| ! --curwin->w_cursor.col; |
| return OK; |
| } |
| |
| --- 5716,5723 ---- |
| RLADDSUBFIX(ptr); |
| #endif |
| } |
| ! if (did_change && curwin->w_cursor.col > 0) |
| ! --curwin->w_cursor.col; |
| return OK; |
| } |
| |
| |
| |
| |
| *** 743,744 **** |
| --- 743,746 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 779, |
| /**/ |
| |
| -- |
| Your mouse has moved. Windows must be restarted for the change |
| to take effect. Reboot now? |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |