From 64be6aa3a54ecfe355d4a03e1200650c301e7f29 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Fri, 19 Nov 2021 11:59:08 +0000 Subject: [PATCH] patch 8.2.3622: "verbose pwd" shows confusing info Problem: "verbose pwd" shows confusing info when :lcd does not change directory. Solution: Clear last_chdir_reason also when the directory does not change. (closes #9160) --- src/ex_docmd.c | 2 +- src/testdir/test_autochdir.vim | 8 ++++++++ src/version.c | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/ex_docmd.c b/src/ex_docmd.c index aae34f90c..76511de70 100644 --- a/src/ex_docmd.c +++ b/src/ex_docmd.c @@ -7301,6 +7301,7 @@ post_chdir(cdscope_T scope) VIM_CLEAR(globaldir); } + last_chdir_reason = NULL; shorten_fnames(TRUE); } @@ -7390,7 +7391,6 @@ changedir_func( if (dir_differs) { - last_chdir_reason = NULL; if (scope == CDSCOPE_WINDOW) acmd_fname = (char_u *)"window"; else if (scope == CDSCOPE_TABPAGE) diff --git a/src/testdir/test_autochdir.vim b/src/testdir/test_autochdir.vim index 8a78b0de6..f6cc14832 100644 --- a/src/testdir/test_autochdir.vim +++ b/src/testdir/test_autochdir.vim @@ -40,6 +40,14 @@ func Test_verbose_pwd() set acd wincmd w call assert_match('\[autochdir\].*testdir$', execute('verbose pwd')) + execute 'lcd' cwd + call assert_match('\[window\].*testdir$', execute('verbose pwd')) + execute 'tcd' cwd + call assert_match('\[tabpage\].*testdir$', execute('verbose pwd')) + execute 'cd' cwd + call assert_match('\[global\].*testdir$', execute('verbose pwd')) + edit + call assert_match('\[autochdir\].*testdir$', execute('verbose pwd')) wincmd w call assert_match('\[autochdir\].*testdir[/\\]Xautodir', execute('verbose pwd')) set noacd diff --git a/src/version.c b/src/version.c index 46f977109..94238de76 100644 --- a/src/version.c +++ b/src/version.c @@ -757,6 +757,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 3622, /**/ 3621, /**/ -- 2.50.1