patch 8.2.0862: ":term ++curwin" makes the current buffer hidden

Problem:    ":term ++curwin" makes the current buffer hidden. (Harm te
            Hennepe)
Solution:   Do not hide the current buffer. (closes #6170)
diff --git a/src/terminal.c b/src/terminal.c
index 86a1a0f..5514c73 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -459,9 +459,9 @@
 	    return NULL;
 	}
 	if (do_ecmd(0, NULL, NULL, &split_ea, ECMD_ONE,
-		     ECMD_HIDE
-			   + ((flags & TERM_START_FORCEIT) ? ECMD_FORCEIT : 0),
-		     curwin) == FAIL)
+		      (buf_hide(curwin->w_buffer) ? ECMD_HIDE : 0)
+			  + ((flags & TERM_START_FORCEIT) ? ECMD_FORCEIT : 0),
+							       curwin) == FAIL)
 	{
 	    vim_free(term);
 	    return NULL;
diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim
index a8a549c..7430eb2 100644
--- a/src/testdir/test_terminal.vim
+++ b/src/testdir/test_terminal.vim
@@ -450,17 +450,21 @@
   let cmd = Get_cat_123_cmd()
   call assert_equal(1, winnr('$'))
 
-  split dummy
+  split Xdummy
+  call setline(1, 'dummy')
+  write
+  call assert_equal(1, getbufinfo('Xdummy')[0].loaded)
   exe 'terminal ++curwin ' . cmd
   call assert_equal(2, winnr('$'))
+  call assert_equal(0, getbufinfo('Xdummy')[0].loaded)
   bwipe!
 
-  split dummy
+  split Xdummy
   call term_start(cmd, {'curwin': 1})
   call assert_equal(2, winnr('$'))
   bwipe!
 
-  split dummy
+  split Xdummy
   call setline(1, 'change')
   call assert_fails('terminal ++curwin ' . cmd, 'E37:')
   call assert_equal(2, winnr('$'))
@@ -468,15 +472,16 @@
   call assert_equal(2, winnr('$'))
   bwipe!
 
-  split dummy
+  split Xdummy
   call setline(1, 'change')
   call assert_fails("call term_start(cmd, {'curwin': 1})", 'E37:')
   call assert_equal(2, winnr('$'))
   bwipe!
 
-  split dummy
+  split Xdummy
   bwipe!
   call delete('Xtext')
+  call delete('Xdummy')
 endfunc
 
 func s:get_sleep_cmd()
diff --git a/src/version.c b/src/version.c
index d1ebe5b..c39e712 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    862,
+/**/
     861,
 /**/
     860,