patch 9.0.2183: Maximum callback depth is not configurable

Problem:  Maximum callback depth is not configurable.
Solution: Revert patch 9.0.2103.  Set 'maxfuncdepth' in test.
          (zeertzjq)

fixes: #13732
closes: #13736

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index d01eccc..c20ff48 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -4206,10 +4206,13 @@
 endfunc
 
 func Test_popup_close_callback_recursive()
+  set maxfuncdepth=20
   " this invokes the callback recursively
   let winid = popup_create('something', #{callback: 'popup_close'})
   redraw
-  call assert_fails('call popup_close(winid)', 'E169')
+  call assert_fails('call popup_close(winid)', 'E169:')
+
+  set maxfuncdepth&
 endfunc
 
 " vim: shiftwidth=2 sts=2
diff --git a/src/userfunc.c b/src/userfunc.c
index ea03e78..c0a2487 100644
--- a/src/userfunc.c
+++ b/src/userfunc.c
@@ -14,9 +14,6 @@
 #include "vim.h"
 
 #if defined(FEAT_EVAL) || defined(PROTO)
-
-#define MAX_CALLBACK_DEPTH 20
-
 /*
  * All user-defined functions are found in this hashtable.
  */
@@ -3603,7 +3600,7 @@
     if (callback->cb_name == NULL || *callback->cb_name == NUL)
 	return FAIL;
 
-    if (callback_depth > MAX_CALLBACK_DEPTH)
+    if (callback_depth > p_mfd)
     {
 	emsg(_(e_command_too_recursive));
 	return FAIL;
diff --git a/src/version.c b/src/version.c
index 6120c53..ec2d0e2 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2183,
+/**/
     2182,
 /**/
     2181,