Mercurial > vim
comparison src/window.c @ 33165:74fcf8a0846b v9.0.1864
patch 9.0.1864: still crash with bt_quickfix1_poc
Commit: https://github.com/vim/vim/commit/623ba31821a41acee7e948794e84867680b97885
Author: Christian Brabandt <cb@256bit.org>
Date: Mon Sep 4 22:09:12 2023 +0200
patch 9.0.1864: still crash with bt_quickfix1_poc
Problem: crash with bt_quickfix1_poc when cleaning up
and EXITFREE is defined
Solution: Test if buffer is valid in a window, else close
window directly, don't try to access buffer properties
While at it, increase the crash timeout slightly, so that CI has a
chance to finish processing the test_crash() test.
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 04 Sep 2023 22:15:04 +0200 |
parents | 41482b74f548 |
children | 201c54cdde82 |
comparison
equal
deleted
inserted
replaced
33164:013eb5170b0f | 33165:74fcf8a0846b |
---|---|
4156 { | 4156 { |
4157 nextwp = wp->w_next; | 4157 nextwp = wp->w_next; |
4158 if (wp == curwin) // don't close current window | 4158 if (wp == curwin) // don't close current window |
4159 continue; | 4159 continue; |
4160 | 4160 |
4161 // autoccommands messed this one up | |
4162 if (!buf_valid(wp->w_buffer) && win_valid(wp)) | |
4163 { | |
4164 wp->w_buffer = NULL; | |
4165 win_close(wp, 0); | |
4166 continue; | |
4167 } | |
4161 // Check if it's allowed to abandon this window | 4168 // Check if it's allowed to abandon this window |
4162 r = can_abandon(wp->w_buffer, forceit); | 4169 r = can_abandon(wp->w_buffer, forceit); |
4163 if (!win_valid(wp)) // autocommands messed wp up | 4170 if (!win_valid(wp)) // autocommands messed wp up |
4164 { | 4171 { |
4165 nextwp = firstwin; | 4172 nextwp = firstwin; |