patch 9.0.0688: debugger does not display the whole command

Problem:    Debugger does not display the whole command.
Solution:   Set ea.cmd before checking for a breakpoint.
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 3ffbf2b..8ca5ede 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -1889,7 +1889,11 @@
 	}
     }
 # endif
+#endif
 
+    ea.cmd = cmd;
+
+#ifdef FEAT_EVAL
     // May go to debug mode.  If this happens and the ">quit" debug command is
     // used, throw an interrupt exception and skip the next command.
     dbg_check_breakpoint(&ea);
@@ -1935,7 +1939,6 @@
 #endif
     }
 
-    ea.cmd = cmd;
     if (!may_have_range)
 	ea.line1 = ea.line2 = default_address(&ea);
     else if (parse_cmd_address(&ea, &errormsg, FALSE) == FAIL)
diff --git a/src/testdir/test_debugger.vim b/src/testdir/test_debugger.vim
index 61cd5c9..2b405d9 100644
--- a/src/testdir/test_debugger.vim
+++ b/src/testdir/test_debugger.vim
@@ -993,7 +993,6 @@
   call RunDbgCmd(buf, 'step', ['line 1: vim9script'])
   call RunDbgCmd(buf, 'step', ['line 3: def DoAThing(): number'])
   call RunDbgCmd(buf, 'step', ['line 9: export def File2Function()'])
-  call RunDbgCmd(buf, 'step', ['line 9: def File2Function()'])
   call RunDbgCmd(buf, 'step', ['line 13: defcompile'])
   call RunDbgCmd(buf, 'step', ['line 14: File2Function()'])
   call RunDbgCmd(buf, 'backtrace', [
diff --git a/src/version.c b/src/version.c
index 7330eeb..2108099 100644
--- a/src/version.c
+++ b/src/version.c
@@ -700,6 +700,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    688,
+/**/
     687,
 /**/
     686,