diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt
index 27ab2c7..e19d601 100644
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 9.1.  Last change: 2024 Jun 20
+*autocmd.txt*   For Vim version 9.1.  Last change: 2024 Jun 21
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -751,7 +751,8 @@
 				that is slow.
 							*CursorMovedC*
 CursorMovedC			After the cursor was moved in the command
-				line. Be careful not to mess up the
+				line while the text in the command line hasn't
+				changed.  Be careful not to mess up the
 				command line, it may cause Vim to lock up.
 				<afile> is set to a single character,
 				indicating the type of command-line.
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 481b450..f05259b 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -1586,7 +1586,7 @@
     int		res;
     int		save_msg_scroll = msg_scroll;
     int		save_State = State;	// remember State when called
-    int		save_cmdspos = ccline.cmdspos;
+    int		prev_cmdpos = -1;
     int		some_key_typed = FALSE;	// one of the keys was typed
     // mouse drag and release events are ignored, unless they are
     // preceded with a mouse down event
@@ -2474,16 +2474,19 @@
  * (Sorry for the goto's, I know it is ugly).
  */
 cmdline_not_changed:
-	 // Trigger CursorMovedC autocommands.
-	 if (ccline.cmdspos != save_cmdspos)
+	// Trigger CursorMovedC autocommands.
+	if (ccline.cmdpos != prev_cmdpos)
+	{
 	    trigger_cmd_autocmd(cmdline_type, EVENT_CURSORMOVEDC);
-
+	    prev_cmdpos = ccline.cmdpos;
+	}
 #ifdef FEAT_SEARCH_EXTRA
 	if (!is_state.incsearch_postponed)
 	    continue;
 #endif
 
 cmdline_changed:
+	prev_cmdpos = ccline.cmdpos;
 #ifdef FEAT_SEARCH_EXTRA
 	// If the window changed incremental search state is not valid.
 	if (is_state.winid != curwin->w_id)
@@ -4321,9 +4324,6 @@
     else
 	new_cmdpos = pos;
 
-    // Trigger CursorMovedC autocommands.
-    trigger_cmd_autocmd(get_cmdline_type(), EVENT_CURSORMOVEDC);
-
     return 0;
 }
 
diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim
index faa0f97..371abcb 100644
--- a/src/testdir/test_autocmd.vim
+++ b/src/testdir/test_autocmd.vim
@@ -2097,20 +2097,28 @@
   au! CmdlineLeave
   let &shellslash = save_shellslash
 
-  au! CursorMovedC : let g:pos = getcmdpos()
-  let g:pos = 0
-  call feedkeys(":hello\<Left>\<ESC>", 'xt')
-  call assert_equal(5, g:pos)
-  call feedkeys(":12345678\<C-R>=setcmdpos(3)\<CR>\<ESC>", 'xt')
-  call assert_equal(3, g:pos)
+  au! CursorMovedC : let g:pos += [getcmdpos()]
+  let g:pos = []
+  call feedkeys(":hello\<Left>\<C-R>=''\<CR>\<Left>\<Right>\<Esc>", 'xt')
+  call assert_equal([5, 4, 5], g:pos)
+  let g:pos = []
+  call feedkeys(":12345678\<C-R>=setcmdpos(3)??''\<CR>\<Esc>", 'xt')
+  call assert_equal([3], g:pos)
+  let g:pos = []
+  call feedkeys(":12345678\<C-R>=setcmdpos(3)??''\<CR>\<Left>\<Esc>", 'xt')
+  call assert_equal([3, 2], g:pos)
   au! CursorMovedC
 
-  " CursorMovedC changes the cursor position.
-  au! CursorMovedC : let g:pos = getcmdpos() | call setcmdpos(getcmdpos()-1)
-  let g:pos = 0
-  call feedkeys(":hello\<Left>\<ESC>", 'xt')
-  call assert_equal(5, g:pos)
+  " setcmdpos() is no-op inside an autocommand
+  au! CursorMovedC : let g:pos += [getcmdpos()] | call setcmdpos(1)
+  let g:pos = []
+  call feedkeys(":hello\<Left>\<Left>\<Esc>", 'xt')
+  call assert_equal([5, 4], g:pos)
   au! CursorMovedC
+
+  unlet g:entered
+  unlet g:left
+  unlet g:pos
 endfunc
 
 " Test for BufWritePre autocommand that deletes or unloads the buffer.
diff --git a/src/version.c b/src/version.c
index f856876..e0b0d5c 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    511,
+/**/
     510,
 /**/
     509,
