changeset 31043:61db3a2a0e78 v9.0.0856

patch 9.0.0856: MS-Windows: executable not found when running test Commit: https://github.com/vim/vim/commit/d55bfcaa9b140c50cddf56a2c614f05f2f6f2533 Author: Christopher Plewright <chris@createng.com> Date: Thu Nov 10 18:21:30 2022 +0000 patch 9.0.0856: MS-Windows: executable not found when running test Problem: MS-Windows: executable not found when running individual test. Solution: Also look for vimd.exe. (Christopher Plewright, closes https://github.com/vim/vim/issues/11525)
author Bram Moolenaar <Bram@vim.org>
date Thu, 10 Nov 2022 19:30:04 +0100
parents b6b171e283ce
children f10a46f81863
files src/testdir/shared.vim src/version.c
diffstat 2 files changed, 28 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/shared.vim
+++ b/src/testdir/shared.vim
@@ -231,14 +231,31 @@ func s:feedkeys(timer)
   call feedkeys('x', 'nt')
 endfunc
 
+" Get the name of the Vim executable that we expect has been build in the src
+" directory.
+func s:GetJustBuildVimExe()
+  if has("win32")
+    if !filereadable('..\vim.exe') && filereadable('..\vimd.exe')
+      " looks like the debug executable was intentionally build, so use it
+      return '..\vimd.exe'
+    endif
+    return '..\vim.exe'
+  endif
+  return '../vim'
+endfunc
+
 " Get $VIMPROG to run the Vim executable.
 " The Makefile writes it as the first line in the "vimcmd" file.
+" Falls back to the Vim executable in the src directory.
 func GetVimProg()
-  if !filereadable('vimcmd')
-    " Assume the script was sourced instead of running "make".
-    return '../vim'
+  if filereadable('vimcmd')
+    return readfile('vimcmd')[0]
   endif
-  return readfile('vimcmd')[0]
+  echo 'Cannot read the "vimcmd" file, falling back to ../vim.'
+
+  " Probably the script was sourced instead of running "make".
+  " We assume Vim was just build in the src directory then.
+  return s:GetJustBuildVimExe()
 endfunc
 
 let g:valgrind_cnt = 1
@@ -246,16 +263,13 @@ let g:valgrind_cnt = 1
 " Get the command to run Vim, with -u NONE and --not-a-term arguments.
 " If there is an argument use it instead of "NONE".
 func GetVimCommand(...)
-  if !filereadable('vimcmd')
+  if filereadable('vimcmd')
+    let lines = readfile('vimcmd')
+  else
     echo 'Cannot read the "vimcmd" file, falling back to ../vim.'
-    if !has("win32")
-      let lines = ['../vim']
-    else
-      let lines = ['..\vim.exe']
-    endif
-  else
-    let lines = readfile('vimcmd')
+    let lines = [s:GetJustBuildVimExe()]
   endif
+
   if a:0 == 0
     let name = 'NONE'
   else
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    856,
+/**/
     855,
 /**/
     854,