patch 8.2.4399: crash after ml_get error

Problem:    Crash after ml_get error.
Solution:   When returning "???" flush the line and set ml_line_lnum.
diff --git a/src/memline.c b/src/memline.c
index c18109a..9c15fa7 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -2619,9 +2619,12 @@
 	    siemsg(_(e_ml_get_invalid_lnum_nr), lnum);
 	    --recursive;
 	}
+	ml_flush_line(buf);
+	buf->b_ml.ml_flags &= ~ML_LINE_DIRTY;
 errorret:
 	STRCPY(questions, "???");
 	buf->b_ml.ml_line_len = 4;
+	buf->b_ml.ml_line_lnum = lnum;
 	return questions;
     }
     if (lnum <= 0)			// pretend line 0 is line 1
diff --git a/src/version.c b/src/version.c
index 4bfca87..4f17acf 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4399,
+/**/
     4398,
 /**/
     4397,