aboutsummaryrefslogtreecommitdiffstats
path: root/main/pbx.c
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-11-01 00:04:43 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-11-01 00:04:43 +0000
commitbba947151d4d966566bff2000d8f0423722b93d5 (patch)
treea8ae9e484df5e5e4ab65765a03dd0ae2f3979ea4 /main/pbx.c
parent0926a1f7c1aa45a2f44015ee234ab2facbe55269 (diff)
Drop any more references to type in the Exception dialplan function.
(closes issue #11134) Reported by: blitzrage Patches: exception_patch.txt uploaded by blitzrage (license 10) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@87953 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/pbx.c')
-rw-r--r--main/pbx.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/main/pbx.c b/main/pbx.c
index d40828707..2910219ed 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -252,7 +252,7 @@ struct pbx_exception {
AST_DECLARE_STRING_FIELDS(
AST_STRING_FIELD(context); /*!< Context associated with this exception */
AST_STRING_FIELD(exten); /*!< Exten associated with this exception */
- AST_STRING_FIELD(type); /*!< The type of exception */
+ AST_STRING_FIELD(reason); /*!< The exception reason */
);
int priority; /*!< Priority associated with this exception */
@@ -448,8 +448,7 @@ static struct pbx_builtin {
{ "RaiseException", pbx_builtin_raise_exception,
"Handle an exceptional condition",
" RaiseException(<reason>): This application will jump to the \"e\" extension\n"
- "in the current context, setting the dialplan function EXCEPTION().\n"
- "You can access the value of <reason> with ${EXCEPTION(type)}. If the \"e\"\n"
+ "in the current context, setting the dialplan function EXCEPTION(). If the \"e\"\n"
"extension does not exist, the call will hangup.\n"
},
@@ -1291,9 +1290,9 @@ static struct ast_datastore_info exception_store_info = {
.destroy = exception_store_free,
};
-int pbx_builtin_raise_exception(struct ast_channel *chan, void *vtype)
+int pbx_builtin_raise_exception(struct ast_channel *chan, void *vreason)
{
- const char *type = vtype;
+ const char *reason = vreason;
struct ast_datastore *ds = ast_channel_datastore_find(chan, &exception_store_info, NULL);
struct pbx_exception *exception = NULL;
@@ -1316,7 +1315,7 @@ int pbx_builtin_raise_exception(struct ast_channel *chan, void *vtype)
} else
exception = ds->data;
- ast_string_field_set(exception, type, type);
+ ast_string_field_set(exception, reason, reason);
ast_string_field_set(exception, context, chan->context);
ast_string_field_set(exception, exten, chan->exten);
exception->priority = chan->priority;
@@ -1331,8 +1330,8 @@ static int acf_exception_read(struct ast_channel *chan, const char *name, char *
if (!ds || !ds->data)
return -1;
exception = ds->data;
- if (!strcasecmp(data, "TYPE"))
- ast_copy_string(buf, exception->type, buflen);
+ if (!strcasecmp(data, "REASON"))
+ ast_copy_string(buf, exception->reason, buflen);
else if (!strcasecmp(data, "CONTEXT"))
ast_copy_string(buf, exception->context, buflen);
else if (!strncasecmp(data, "EXTEN", 5))
@@ -1349,7 +1348,8 @@ static struct ast_custom_function exception_function = {
.synopsis = "Retrieve the details of the current dialplan exception",
.desc =
"The following fields are available for retrieval:\n"
-" type INVALID, ERROR, RESPONSETIMEOUT, or ABSOLUTETIMEOUT\n"
+" reason INVALID, ERROR, RESPONSETIMEOUT, ABSOLUTETIMEOUT, or custom\n"
+" value set by the RaiseException() application\n"
" context The context executing when the exception occurred\n"
" exten The extension executing when the exception occurred\n"
" priority The numeric priority executing when the exception occurred\n",