comparison src/tag.c @ 34470:dd8f5311cee5 v9.1.0147

patch 9.1.0147: Cannot keep a buffer focused in a window Commit: https://github.com/vim/vim/commit/215703563757a4464907ead6fb9edaeb7f430bea Author: Colin Kennedy <colinvfx@gmail.com> Date: Sun Mar 3 16:16:47 2024 +0100 patch 9.1.0147: Cannot keep a buffer focused in a window Problem: Cannot keep a buffer focused in a window (Amit Levy) Solution: Add the 'winfixbuf' window-local option (Colin Kennedy) fixes: #6445 closes: #13903 Signed-off-by: Colin Kennedy <colinvfx@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sun, 03 Mar 2024 16:30:06 +0100
parents d8c69a773456
children 968626cf50fa
comparison
equal deleted inserted replaced
34469:055c08ca0446 34470:dd8f5311cee5
286 // remember the matches for the last used tag 286 // remember the matches for the last used tag
287 static int num_matches = 0; 287 static int num_matches = 0;
288 static int max_num_matches = 0; // limit used for match search 288 static int max_num_matches = 0; // limit used for match search
289 static char_u **matches = NULL; 289 static char_u **matches = NULL;
290 static int flags; 290 static int flags;
291
292 if (postponed_split == 0 && !check_can_set_curbuf_forceit(forceit))
293 return FALSE;
291 294
292 #ifdef FEAT_EVAL 295 #ifdef FEAT_EVAL
293 if (tfu_in_use) 296 if (tfu_in_use)
294 { 297 {
295 emsg(_(e_cannot_modify_tag_stack_within_tagfunc)); 298 emsg(_(e_cannot_modify_tag_stack_within_tagfunc));
3702 #ifdef FEAT_FOLDING 3705 #ifdef FEAT_FOLDING
3703 int old_KeyTyped = KeyTyped; // getting the file may reset it 3706 int old_KeyTyped = KeyTyped; // getting the file may reset it
3704 #endif 3707 #endif
3705 size_t len; 3708 size_t len;
3706 char_u *lbuf; 3709 char_u *lbuf;
3710
3711 if (postponed_split == 0 && !check_can_set_curbuf_forceit(forceit))
3712 return FAIL;
3707 3713
3708 // Make a copy of the line, it can become invalid when an autocommand calls 3714 // Make a copy of the line, it can become invalid when an autocommand calls
3709 // back here recursively. 3715 // back here recursively.
3710 len = matching_line_len(lbuf_arg) + 1; 3716 len = matching_line_len(lbuf_arg) + 1;
3711 lbuf = alloc(len); 3717 lbuf = alloc(len);