patch 8.1.0464: MS-Windows: job_info() has cmd without backslashes

Problem:    MS-Windows: job_info() has cmd without backslashes. (Daniel
            Hahler)
Solution:   Use rem_backslash(). (closes #3517, closes #3404)
diff --git a/src/misc2.c b/src/misc2.c
index 754fcdc..ad96bea 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -6458,14 +6458,14 @@
 	    while (*p != NUL && (inquote || (*p != ' ' && *p != TAB)))
 	    {
 		if (p[0] == '"')
-		    /* quotes surrounding an argument and are dropped */
+		    // quotes surrounding an argument and are dropped
 		    inquote = !inquote;
 		else
 		{
-		    if (p[0] == '\\' && p[1] != NUL)
+		    if (rem_backslash(p))
 		    {
-			/* First pass: skip over "\ " and "\"".
-			 * Second pass: Remove the backslash. */
+			// First pass: skip over "\ " and "\"".
+			// Second pass: Remove the backslash.
 			++p;
 		    }
 		    if (i == 1)
diff --git a/src/testdir/test_channel.vim b/src/testdir/test_channel.vim
index 5d07147..832f54e 100644
--- a/src/testdir/test_channel.vim
+++ b/src/testdir/test_channel.vim
@@ -1721,6 +1721,22 @@
   call WaitForAssert({-> assert_equal(1, g:linecount)})
 endfunc
 
+func Test_job_start_windows()
+  if !has('job') || !has('win32')
+    return
+  endif
+
+  " Check that backslash in $COMSPEC is handled properly.
+  let g:echostr = ''
+  let cmd = $COMSPEC . ' /c echo 123'
+  let job = job_start(cmd, {'callback': {ch,msg -> execute(":let g:echostr .= msg")}})
+  let info = job_info(job)
+  call assert_equal([$COMSPEC, '/c', 'echo', '123'], info.cmd)
+
+  call WaitForAssert({-> assert_equal("123", g:echostr)})
+  unlet g:echostr
+endfunc
+
 func Test_env()
   if !has('job')
     return
diff --git a/src/version.c b/src/version.c
index 90588ef..8da8e71 100644
--- a/src/version.c
+++ b/src/version.c
@@ -793,6 +793,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    464,
+/**/
     463,
 /**/
     462,