diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-10-19 18:19:02 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2005-10-19 18:19:02 +0000 |
commit | 58818426d60d583c4becc6a99b398cbac1b7b12f (patch) | |
tree | 5fee3540f8d72d45cd1b2e5bf15e5860581dd4f8 /apps/app_waitforsilence.c | |
parent | a4d6ea67a7536e2cb2337527357ce6d3db8639f3 (diff) |
Massive cleanups to applications for LOCAL_USER handling and some other things.
In general, LOCAL_USER_ADD/REMOVE should be the first/last thing called in an
application. An exception is if there is some *fast* setup code that might
halt the execution of the application, such as checking to see if an argument
exists.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6832 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_waitforsilence.c')
-rwxr-xr-x | apps/app_waitforsilence.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/apps/app_waitforsilence.c b/apps/app_waitforsilence.c index a5e7a7766..5521e202a 100755 --- a/apps/app_waitforsilence.c +++ b/apps/app_waitforsilence.c @@ -152,6 +152,8 @@ static int waitforsilence_exec(struct ast_channel *chan, void *data) int maxsilence = 1000; int iterations = 1, i; + LOCAL_USER_ADD(u); + res = ast_answer(chan); /* Answer the channel */ if (!data || ((sscanf(data, "%d|%d", &maxsilence, &iterations) != 2) && @@ -161,7 +163,7 @@ static int waitforsilence_exec(struct ast_channel *chan, void *data) if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 "Waiting %d time(s) for %d ms silence\n", iterations, maxsilence); - LOCAL_USER_ADD(u); + res = 1; for (i=0; (i<iterations) && (res == 1); i++) { res = do_waiting(chan, maxsilence); |