[asterisk-commits] murf: branch 1.2 r44343 - /branches/1.2/apps/app_macro.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Wed Oct 4 09:02:23 MST 2006


Author: murf
Date: Wed Oct  4 11:02:22 2006
New Revision: 44343

URL: http://svn.digium.com/view/asterisk?rev=44343&view=rev
Log:
For bug 7776, I have inserted a warning about Macro nesting vs. stack limitations

Modified:
    branches/1.2/apps/app_macro.c

Modified: branches/1.2/apps/app_macro.c
URL: http://svn.digium.com/view/asterisk/branches/1.2/apps/app_macro.c?rev=44343&r1=44342&r2=44343&view=diff
==============================================================================
--- branches/1.2/apps/app_macro.c (original)
+++ branches/1.2/apps/app_macro.c Wed Oct  4 11:02:22 2006
@@ -60,7 +60,13 @@
 "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\n"
+"         macros could cause asterisk to crash earlier than this limit.\n";
 
 static char *if_descrip =
 "  MacroIf(<expr>?macroname_a[|arg1][:macroname_b[|arg1]])\n"



More information about the asterisk-commits mailing list