diff --git a/src/testdir/shared.vim b/src/testdir/shared.vim
index 056ecd9..5985ff9 100644
--- a/src/testdir/shared.vim
+++ b/src/testdir/shared.vim
@@ -126,21 +126,32 @@
 " "after" is a list of commands to be executed after loading plugins.
 " Plugins are not loaded, unless 'loadplugins' is set in "before".
 " Return 1 if Vim could be executed.
-func RunVim(before, after)
+func RunVim(before, after, arguments)
   if !filereadable('vimcmd')
     return 0
   endif
-  call writefile(a:before, 'Xbefore.vim')
-  call writefile(a:after, 'Xafter.vim')
+  let args = a:arguments
+  if len(a:before) > 0
+    call writefile(a:before, 'Xbefore.vim')
+    let args .= ' --cmd "so Xbefore.vim"'
+  endif
+  if len(a:after) > 0
+    call writefile(a:after, 'Xafter.vim')
+    let args .= ' -S Xafter.vim'
+  endif
 
   let cmd = readfile('vimcmd')[0]
   let cmd = substitute(cmd, '-u \f\+', '-u NONE', '')
   if cmd !~ '-u NONE'
     let cmd = cmd . ' -u NONE'
   endif
-  exe "silent !" . cmd . " --cmd \"so Xbefore.vim\" -S Xafter.vim"
+  exe "silent !" . cmd . ' ' . args
 
-  call delete('Xbefore.vim')
-  call delete('Xafter.vim')
+  if len(a:before) > 0
+    call delete('Xbefore.vim')
+  endif
+  if len(a:after) > 0
+    call delete('Xafter.vim')
+  endif
   return 1
 endfunc
diff --git a/src/testdir/test_startup.vim b/src/testdir/test_startup.vim
index 14e78ce..d2463f4 100644
--- a/src/testdir/test_startup.vim
+++ b/src/testdir/test_startup.vim
@@ -41,7 +41,7 @@
   call mkdir('Xafter/plugin', 'p')
   call writefile(['let done = 1'], 'Xafter/plugin/later.vim')
 
-  if RunVim(before, after)
+  if RunVim(before, after, '')
 
     let lines = readfile('Xtestout')
     let expected = ['Xbefore.vim', 'here.vim', 'foo.vim', 'later.vim', 'Xafter.vim']
@@ -60,3 +60,24 @@
   call delete('Xhere', 'rf')
   call delete('Xafter', 'rf')
 endfunc
+
+func Test_help_arg()
+  if RunVim([], [], '--help >Xtestout')
+    let lines = readfile('Xtestout')
+    call assert_true(len(lines) > 20)
+    call assert_true(lines[0] =~ 'Vi IMproved')
+
+    " check if  couple of lines are there
+    let found = 0
+    for line in lines
+      if line =~ '-R.*Readonly mode'
+	let found += 1
+      endif
+      if line =~ '--version'
+	let found += 1
+      endif
+    endfor
+    call assert_equal(2, found)
+  endif
+  call delete('Xtestout')
+endfunc
diff --git a/src/version.c b/src/version.c
index 98dd5f4..a7af293 100644
--- a/src/version.c
+++ b/src/version.c
@@ -764,6 +764,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2172,
+/**/
     2171,
 /**/
     2170,
