patch 9.0.0207: stacktrace not shown when debugging

Problem:    Stacktrace not shown when debugging.
Solution:   Set msg_scroll in msg_source(). (closes #10917)
diff --git a/src/message.c b/src/message.c
index 715c7be..ec128bd 100644
--- a/src/message.c
+++ b/src/message.c
@@ -531,6 +531,7 @@
 	return;
     recursive = TRUE;
 
+    msg_scroll = TRUE;  // this will take more than one line
     ++no_wait_return;
     p = get_emsg_source();
     if (p != NULL)
@@ -746,7 +747,6 @@
     }
 
     emsg_on_display = TRUE;	// remember there is an error message
-    ++msg_scroll;		// don't overwrite a previous message
     attr = HL_ATTR(HLF_E);	// set highlight mode for error messages
     if (msg_scrolled != 0)
 	need_wait_return = TRUE;    // needed in case emsg() is called after
@@ -759,6 +759,7 @@
 #endif
     /*
      * Display name and line number for the source of the error.
+     * Sets "msg_scroll".
      */
     msg_source(attr);
 
diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim
index ba08dd7..e303212 100644
--- a/src/testdir/test_options.vim
+++ b/src/testdir/test_options.vim
@@ -934,11 +934,16 @@
   set rightleft&
 endfunc
 
-" Test for the "debug" option
+" Test for the 'debug' option
 func Test_debug_option()
+  " redraw to avoid matching previous messages
+  redraw
   set debug=beep
   exe "normal \<C-c>"
   call assert_equal('Beep!', Screenline(&lines))
+  call assert_equal('line    4:', Screenline(&lines - 1))
+  " only match the final colon in the line that shows the source
+  call assert_match(':$', Screenline(&lines - 2))
   set debug&
 endfunc
 
diff --git a/src/version.c b/src/version.c
index e13374f..1ef5b39 100644
--- a/src/version.c
+++ b/src/version.c
@@ -736,6 +736,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    207,
+/**/
     206,
 /**/
     205,