patch 8.0.1450: GUI: endless loop when stopping cursor blinking
Problem: Endless loop when gui_mch_stop_blink() is called while blink_state
is BLINK_OFF. (zdohnal)
Solution: Avoid calling gui_update_cursor() recursively.
diff --git a/src/gui_mac.c b/src/gui_mac.c
index 97cbf80..db9f959 100644
--- a/src/gui_mac.c
+++ b/src/gui_mac.c
@@ -5156,9 +5156,10 @@
* Stop the cursor blinking. Show the cursor if it wasn't shown.
*/
void
-gui_mch_stop_blink(void)
+gui_mch_stop_blink(int may_call_gui_update_cursor)
{
- gui_update_cursor(TRUE, FALSE);
+ if (may_call_gui_update_cursor)
+ gui_update_cursor(TRUE, FALSE);
/* TODO: TODO: TODO: TODO: */
/* gui_w32_rm_blink_timer();
if (blink_state == BLINK_OFF)