Mercurial > vim
comparison src/popupwin.c @ 21731:48f9bf2c677d v8.2.1415
patch 8.2.1415: closing a popup window with CTRL-C interrupts 'statusline'
Commit: https://github.com/vim/vim/commit/6f8f7337c1211692d508239eb4cbc8a6f67de497
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Aug 10 21:19:23 2020 +0200
patch 8.2.1415: closing a popup window with CTRL-C interrupts 'statusline'
Problem: Closing a popup window with CTRL-C interrupts 'statusline' if it
calls a function.
Solution: Reset got_int while redrawing. (closes #6675)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 10 Aug 2020 21:30:05 +0200 |
parents | f2ba8ebbab2b |
children | 1f6dc5b953c4 |
comparison
equal
deleted
inserted
replaced
21730:2c83ca2b2038 | 21731:48f9bf2c677d |
---|---|
3207 if (wp->w_filter_cb.cb_name != NULL | 3207 if (wp->w_filter_cb.cb_name != NULL |
3208 && (wp->w_filter_mode & state) != 0) | 3208 && (wp->w_filter_mode & state) != 0) |
3209 res = invoke_popup_filter(wp, c); | 3209 res = invoke_popup_filter(wp, c); |
3210 | 3210 |
3211 if (must_redraw > was_must_redraw) | 3211 if (must_redraw > was_must_redraw) |
3212 { | |
3213 int save_got_int = got_int; | |
3214 | |
3215 // Reset got_int to avoid a function used in the statusline aborts. | |
3216 got_int = FALSE; | |
3212 redraw_after_callback(FALSE); | 3217 redraw_after_callback(FALSE); |
3218 got_int |= save_got_int; | |
3219 } | |
3213 recursive = FALSE; | 3220 recursive = FALSE; |
3214 KeyTyped = save_KeyTyped; | 3221 KeyTyped = save_KeyTyped; |
3215 return res; | 3222 return res; |
3216 } | 3223 } |
3217 | 3224 |