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.
diff --git a/src/ops.c b/src/ops.c
index 8752477..e882051 100644
--- a/src/ops.c
+++ b/src/ops.c
@@ -5404,6 +5404,7 @@
     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,6 +5548,7 @@
 #endif
 	    }
 	    curwin->w_cursor.col = col;
+	    did_change = TRUE;
 	    (void)del_char(FALSE);
 	    ins_char(firstdigit);
 	}
@@ -5619,6 +5621,7 @@
 	     * Delete the old number.
 	     */
 	    curwin->w_cursor.col = col;
+	    did_change = TRUE;
 	    todel = length;
 	    c = gchar_cursor();
 
@@ -5713,7 +5716,8 @@
 	RLADDSUBFIX(ptr);
 #endif
     }
-    --curwin->w_cursor.col;
+    if (did_change && curwin->w_cursor.col > 0)
+	--curwin->w_cursor.col;
     return OK;
 }