patch 8.2.4591: cursor line not updated when a callback moves the cursor

Problem:    Cursor line not updated when a callback moves the cursor.
Solution:   Check if the cursor moved. (closes #9970)
diff --git a/src/main.c b/src/main.c
index 80cff7c..7e8cbf0 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1386,12 +1386,7 @@
 
 #ifdef FEAT_SYN_HL
 	    // Might need to update for 'cursorline'.
-	    // When 'cursorlineopt' is "screenline" need to redraw always.
-	    if (curwin->w_p_cul
-		    && (curwin->w_last_cursorline != curwin->w_cursor.lnum
-			|| (curwin->w_p_culopt_flags & CULOPT_SCRLINE))
-		    && !char_avail())
-		redraw_later(VALID);
+	    check_redraw_cursorline();
 #endif
 	    if (VIsual_active)
 		update_curbuf(INVERTED); // update inverted part