aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_macro.c
diff options
context:
space:
mode:
authormurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-04 15:37:51 +0000
committermurf <murf@f38db490-d61c-443f-a65b-d21fe96a405b>2006-10-04 15:37:51 +0000
commit3d2d5368810fb068cc90e92f412caebd7d0955d7 (patch)
tree3cf92153fb36da4b167d9c4c5ceaa9796c9c3b04 /apps/app_macro.c
parentcdae839f80c827934702a33d592a2137fb77f8aa (diff)
Added a warning to the documentation for Macro in response to bug 7776
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@44336 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_macro.c')
-rw-r--r--apps/app_macro.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/apps/app_macro.c b/apps/app_macro.c
index 861248c1e..c35208f73 100644
--- a/apps/app_macro.c
+++ b/apps/app_macro.c
@@ -60,7 +60,15 @@ static char *descrip =
"If you Goto out of the Macro context, the Macro will terminate and control\n"
"will be returned at the location of the Goto.\n"
"If ${MACRO_OFFSET} is set at termination, Macro will attempt to continue\n"
-"at priority MACRO_OFFSET + N + 1 if such a step exists, and N + 1 otherwise.\n";
+"at priority MACRO_OFFSET + N + 1 if such a step exists, and N + 1 otherwise.\n"
+"WARNING: Because of the way Macro is implemented (it executes the priorities\n"
+" contained within it via sub-engine), and a fixed per-thread\n"
+" memory stack allowance, macros are limited to 7 levels\n"
+" of nesting (macro calling macro calling macro, etc.); It\n"
+" may be possible that stack-intensive applications in deeply nested macros\n"
+" could cause asterisk to crash earlier than this limit. It is advised that\n"
+" if you need to deeply nest macro calls, that you use the Gosub application\n"
+" (now allows arguments like a Macro) with explict Return() calls instead.\n";
static char *if_descrip =
" MacroIf(<expr>?macroname_a[|arg1][:macroname_b[|arg1]])\n"