Mercurial > vim
comparison src/misc2.c @ 20380:79c870b68cf3 v8.2.0745
patch 8.2.0745: crash on exit when not all popups are closed
Commit: https://github.com/vim/vim/commit/06f0853cb0b10364b22e5607fdecd35b3936e9ea
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue May 12 23:45:16 2020 +0200
patch 8.2.0745: crash on exit when not all popups are closed
Problem: Crash on exit when not all popups are closed.
Solution: Close popups when freeing all memory. Disable checking for popup
when editing a file for now.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 13 May 2020 00:00:03 +0200 |
parents | 2e5e86ff7596 |
children | 42ab4d40e78f |
comparison
equal
deleted
inserted
replaced
20379:7f88f6a3ed4c | 20380:79c870b68cf3 |
---|---|
1066 spell_free_all(); | 1066 spell_free_all(); |
1067 # endif | 1067 # endif |
1068 | 1068 |
1069 # if defined(FEAT_BEVAL_TERM) | 1069 # if defined(FEAT_BEVAL_TERM) |
1070 ui_remove_balloon(); | 1070 ui_remove_balloon(); |
1071 # endif | |
1072 # if defined(FEAT_PROP_POPUP) | |
1073 if (curwin != NULL) | |
1074 { | |
1075 while (popup_is_popup(curwin)) | |
1076 popup_close_with_retval(curwin, 0); | |
1077 close_all_popups(); | |
1078 } | |
1071 # endif | 1079 # endif |
1072 | 1080 |
1073 // Clear user commands (before deleting buffers). | 1081 // Clear user commands (before deleting buffers). |
1074 ex_comclear(NULL); | 1082 ex_comclear(NULL); |
1075 | 1083 |
3142 #endif | 3150 #endif |
3143 | 3151 |
3144 if (p_verbose > 3) | 3152 if (p_verbose > 3) |
3145 { | 3153 { |
3146 verbose_enter(); | 3154 verbose_enter(); |
3147 smsg(_("Calling shell to execute: \"%s\""), | 3155 smsg(_("Calling shell to execute: \"%s\""), cmd == NULL ? p_sh : cmd); |
3148 cmd == NULL ? p_sh : cmd); | |
3149 out_char('\n'); | 3156 out_char('\n'); |
3150 cursor_on(); | 3157 cursor_on(); |
3151 verbose_leave(); | 3158 verbose_leave(); |
3152 } | 3159 } |
3153 | 3160 |