patch 8.2.0209: function a bit far away from where it's used

Problem:    Function a bit far away from where it's used.
Solution:   Move function close to where it's used. (Ken Takata, closes #5569)
diff --git a/src/fileio.c b/src/fileio.c
index e35ce8c..575efaf 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -4423,17 +4423,17 @@
     int		(*checkitem)(void *context, char_u *name))
 {
     int			failed = FALSE;
-#ifdef MSWIN
+# ifdef MSWIN
     char_u		*buf, *p;
     int			ok;
     HANDLE		hFind = INVALID_HANDLE_VALUE;
     WIN32_FIND_DATAW    wfb;
     WCHAR		*wn = NULL;	// UTF-16 name, NULL when not used.
-#endif
+# endif
 
     ga_init2(gap, (int)sizeof(char *), 20);
 
-#ifdef MSWIN
+# ifdef MSWIN
     buf = alloc(MAXPATHL);
     if (buf == NULL)
 	return FAIL;
@@ -4498,7 +4498,7 @@
 
     vim_free(buf);
     vim_free(wn);
-#else
+# else
     DIR		*dirp;
     struct dirent *dp;
     char_u	*p;
@@ -4547,7 +4547,7 @@
 
 	closedir(dirp);
     }
-#endif
+# endif
 
     if (!failed && gap->ga_len > 0)
 	sort_strings((char_u **)gap->ga_data, gap->ga_len);
diff --git a/src/filepath.c b/src/filepath.c
index 4517f41..9a5d127 100644
--- a/src/filepath.c
+++ b/src/filepath.c
@@ -1256,41 +1256,6 @@
 }
 
 /*
- * Evaluate "expr" (= "context") for readdir().
- */
-    static int
-readdir_checkitem(void *context, char_u *name)
-{
-    typval_T	*expr = (typval_T *)context;
-    typval_T	save_val;
-    typval_T	rettv;
-    typval_T	argv[2];
-    int		retval = 0;
-    int		error = FALSE;
-
-    if (expr->v_type == VAR_UNKNOWN)
-	return 1;
-
-    prepare_vimvar(VV_VAL, &save_val);
-    set_vim_var_string(VV_VAL, name, -1);
-    argv[0].v_type = VAR_STRING;
-    argv[0].vval.v_string = name;
-
-    if (eval_expr_typval(expr, argv, 1, &rettv) == FAIL)
-	goto theend;
-
-    retval = tv_get_number_chk(&rettv, &error);
-    if (error)
-	retval = -1;
-    clear_tv(&rettv);
-
-theend:
-    set_vim_var_string(VV_VAL, NULL, 0);
-    restore_vimvar(VV_VAL, &save_val);
-    return retval;
-}
-
-/*
  * Create the directory in which "dir" is located, and higher levels when
  * needed.
  * Return OK or FAIL.
@@ -1386,6 +1351,41 @@
 }
 
 /*
+ * Evaluate "expr" (= "context") for readdir().
+ */
+    static int
+readdir_checkitem(void *context, char_u *name)
+{
+    typval_T	*expr = (typval_T *)context;
+    typval_T	save_val;
+    typval_T	rettv;
+    typval_T	argv[2];
+    int		retval = 0;
+    int		error = FALSE;
+
+    if (expr->v_type == VAR_UNKNOWN)
+	return 1;
+
+    prepare_vimvar(VV_VAL, &save_val);
+    set_vim_var_string(VV_VAL, name, -1);
+    argv[0].v_type = VAR_STRING;
+    argv[0].vval.v_string = name;
+
+    if (eval_expr_typval(expr, argv, 1, &rettv) == FAIL)
+	goto theend;
+
+    retval = tv_get_number_chk(&rettv, &error);
+    if (error)
+	retval = -1;
+    clear_tv(&rettv);
+
+theend:
+    set_vim_var_string(VV_VAL, NULL, 0);
+    restore_vimvar(VV_VAL, &save_val);
+    return retval;
+}
+
+/*
  * "readdir()" function
  */
     void
diff --git a/src/version.c b/src/version.c
index 6e598e5..aae2526 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    209,
+/**/
     208,
 /**/
     207,