aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api/vim.c
diff options
context:
space:
mode:
authorphanium <91544758+phanen@users.noreply.github.com>2024-12-16 16:59:24 +0800
committerGitHub <noreply@github.com>2024-12-16 00:59:24 -0800
commit01a97d2ad75a459cad850d542f9ad7c4467cb380 (patch)
treebade151d04e5d398e6f6b02de1c834e60b189ba0 /src/nvim/api/vim.c
parentcc38630d39d2aa99183756d55849117daf6dfbfa (diff)
downloadrneovim-01a97d2ad75a459cad850d542f9ad7c4467cb380.tar.gz
rneovim-01a97d2ad75a459cad850d542f9ad7c4467cb380.tar.bz2
rneovim-01a97d2ad75a459cad850d542f9ad7c4467cb380.zip
fix(api): nvim_win_set_buf(0, 0) fails if 'winfixbuf' is set #31576
## Problem With 'winfixbuf' enabled, `nvim_win_set_buf` and `nvim_set_current_buf` fail even if targeting the already-current buffer. vim.wo.winfixbuf = true vim.api.nvim_win_set_buf(0, 0) vim.api.nvim_set_current_buf(0) Solution: Check for this condition.
Diffstat (limited to 'src/nvim/api/vim.c')
-rw-r--r--src/nvim/api/vim.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c
index 1262af5e40..42fc21deac 100644
--- a/src/nvim/api/vim.c
+++ b/src/nvim/api/vim.c
@@ -888,7 +888,7 @@ void nvim_set_current_buf(Buffer buffer, Error *err)
{
buf_T *buf = find_buffer_by_handle(buffer, err);
- if (!buf) {
+ if (!buf || curwin->w_buffer == buf) {
return;
}