To: vim_dev@googlegroups.com Subject: Patch 8.1.0537 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 8.1.0537 Problem: ui_breakcheck() may be called recursively, which doesn't work. Solution: When called recursively, just return. (James McCoy, closes #3617) Files: src/ui.c *** ../vim-8.1.0536/src/ui.c 2018-09-30 21:43:17.207693209 +0200 --- src/ui.c 2018-11-20 02:35:02.966727048 +0100 *************** *** 403,411 **** void ui_breakcheck_force(int force) { ! int save_updating_screen = updating_screen; ! /* We do not want gui_resize_shell() to redraw the screen here. */ ++updating_screen; #ifdef FEAT_GUI --- 403,419 ---- void ui_breakcheck_force(int force) { ! static int recursive = FALSE; ! int save_updating_screen = updating_screen; ! // We could be called recursively if stderr is redirected, calling ! // fill_input_buf() calls settmode() when stdin isn't a tty. settmode() ! // calls vgetorpeek() which calls ui_breakcheck() again. ! if (recursive) ! return; ! recursive = TRUE; ! ! // We do not want gui_resize_shell() to redraw the screen here. ++updating_screen; #ifdef FEAT_GUI *************** *** 419,424 **** --- 427,434 ---- updating_screen = TRUE; else reset_updating_screen(FALSE); + + recursive = FALSE; } /***************************************************************************** *** ../vim-8.1.0536/src/version.c 2018-11-18 12:25:04.219533634 +0100 --- src/version.c 2018-11-20 02:30:47.832599259 +0100 *************** *** 794,795 **** --- 794,797 ---- { /* Add new patch number below this line */ + /**/ + 537, /**/ -- Why isn't there mouse-flavored cat food? /// 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 ///