Mercurial > vim
comparison src/macros.h @ 19629:804322d6c6ba v8.2.0371
patch 8.2.0371: crash with combination of terminal popup and autocmd
Commit: https://github.com/vim/vim/commit/cee52204ca030ce7814844e4dab8b4ed897ba3cc
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Mar 11 14:19:58 2020 +0100
patch 8.2.0371: crash with combination of terminal popup and autocmd
Problem: Crash with combination of terminal popup and autocmd.
Solution: Disallow closing a popup that is the current window. Add a check
that the current buffer is valid. (closes #5754)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 11 Mar 2020 14:30:04 +0100 |
parents | 9e428147e4ee |
children | bf377a9ffccb |
comparison
equal
deleted
inserted
replaced
19628:a9fb9a329b79 | 19629:804322d6c6ba |
---|---|
362 #ifdef ABORT_ON_INTERNAL_ERROR | 362 #ifdef ABORT_ON_INTERNAL_ERROR |
363 # define ESTACK_CHECK_DECLARATION int estack_len_before; | 363 # define ESTACK_CHECK_DECLARATION int estack_len_before; |
364 # define ESTACK_CHECK_SETUP estack_len_before = exestack.ga_len; | 364 # define ESTACK_CHECK_SETUP estack_len_before = exestack.ga_len; |
365 # define ESTACK_CHECK_NOW if (estack_len_before != exestack.ga_len) \ | 365 # define ESTACK_CHECK_NOW if (estack_len_before != exestack.ga_len) \ |
366 siemsg("Exestack length expected: %d, actual: %d", estack_len_before, exestack.ga_len); | 366 siemsg("Exestack length expected: %d, actual: %d", estack_len_before, exestack.ga_len); |
367 # define CHECK_CURBUF if (curwin != NULL && curwin->w_buffer != curbuf) \ | |
368 iemsg("curbuf != curwin->w_buffer") | |
367 #else | 369 #else |
368 # define ESTACK_CHECK_DECLARATION | 370 # define ESTACK_CHECK_DECLARATION |
369 # define ESTACK_CHECK_SETUP | 371 # define ESTACK_CHECK_SETUP |
370 # define ESTACK_CHECK_NOW | 372 # define ESTACK_CHECK_NOW |
371 #endif | 373 # define CHECK_CURBUF |
374 #endif |