diff --git a/7.3.139 b/7.3.139 new file mode 100644 index 0000000..057bf65 --- /dev/null +++ b/7.3.139 @@ -0,0 +1,111 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.139 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.139 (after 7.3.137) +Problem: When 'lazyredraw' is set ":ver" output can't be read. +Solution: Don't redraw the screen when at a prompt or command line. +Files: src/getchar.c, src/message.c, src/misc1.c + + +*** ../vim-7.3.138/src/getchar.c 2011-03-03 15:04:01.000000000 +0100 +--- src/getchar.c 2011-03-22 12:16:23.000000000 +0100 +*************** +*** 2713,2719 **** + * changed text so far. Also for when 'lazyredraw' is set and + * redrawing was postponed because there was something in the + * input buffer (e.g., termresponse). */ +! if (((State & INSERT) || p_lz) && advance && must_redraw != 0) + { + update_screen(0); + setcursor(); /* put cursor back where it belongs */ +--- 2713,2720 ---- + * changed text so far. Also for when 'lazyredraw' is set and + * redrawing was postponed because there was something in the + * input buffer (e.g., termresponse). */ +! if (((State & INSERT) != 0 || p_lz) && (State & CMDLINE) == 0 +! && advance && must_redraw != 0 && !need_wait_return) + { + update_screen(0); + setcursor(); /* put cursor back where it belongs */ +*** ../vim-7.3.138/src/message.c 2011-02-01 17:12:20.000000000 +0100 +--- src/message.c 2011-03-22 13:06:24.000000000 +0100 +*************** +*** 879,894 **** + if (msg_silent != 0) + return; + +! /* +! * With the global command (and some others) we only need one return at the +! * end. Adjust cmdline_row to avoid the next message overwriting the last one. +! * When inside vgetc(), we can't wait for a typed character at all. +! */ + if (vgetc_busy > 0) + return; + if (no_wait_return) + { +- need_wait_return = TRUE; + if (!exmode_active) + cmdline_row = msg_row; + return; +--- 879,895 ---- + if (msg_silent != 0) + return; + +! /* +! * When inside vgetc(), we can't wait for a typed character at all. +! * With the global command (and some others) we only need one return at +! * the end. Adjust cmdline_row to avoid the next message overwriting the +! * last one. +! */ + if (vgetc_busy > 0) + return; ++ need_wait_return = TRUE; + if (no_wait_return) + { + if (!exmode_active) + cmdline_row = msg_row; + return; +*** ../vim-7.3.138/src/misc1.c 2011-03-03 15:04:01.000000000 +0100 +--- src/misc1.c 2011-03-22 12:15:26.000000000 +0100 +*************** +*** 3116,3122 **** + + if (n == KEYLEN_REMOVED) /* key code removed */ + { +! if (must_redraw) + { + /* Redrawing was postponed, do it now. */ + update_screen(0); +--- 3116,3122 ---- + + if (n == KEYLEN_REMOVED) /* key code removed */ + { +! if (must_redraw != 0 && !need_wait_return && (State & CMDLINE) == 0) + { + /* Redrawing was postponed, do it now. */ + update_screen(0); +*** ../vim-7.3.138/src/version.c 2011-03-03 15:54:45.000000000 +0100 +--- src/version.c 2011-03-22 13:06:33.000000000 +0100 +*************** +*** 716,717 **** +--- 716,719 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 139, + /**/ + +-- +"Software is like sex... it's better when it's free." + -- Linus Torvalds, initiator of the free Linux OS +Makes me wonder what FSF stands for...? + + /// 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 ///