diff options
author | Joshua Colp <jcolp@digium.com> | 2006-12-11 05:01:37 +0000 |
---|---|---|
committer | Joshua Colp <jcolp@digium.com> | 2006-12-11 05:01:37 +0000 |
commit | f5c2b807876e31bc778bbaf12792e3e85b7cfe7a (patch) | |
tree | 789912f127bffa7cb7fcb41c8c7fa1c2300243eb | |
parent | d670858735fce93f57eb72d3b8a0bba923015d31 (diff) |
Merged revisions 48377 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r48377 | file | 2006-12-10 23:57:38 -0500 (Sun, 10 Dec 2006) | 2 lines
Don't access the conference structure after it has been freed.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r-- | apps/app_meetme.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c index 403517f1d..30b6b8d64 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -1945,6 +1945,13 @@ bailoutandtrynormal: conf->markedusers--; /* Remove ourselves from the list */ AST_LIST_REMOVE(&conf->userlist, user, list); + + /* Change any states */ + if (!conf->users) + ast_device_state_changed("meetme:%s", conf->confno); + if (confflags & (CONFFLAG_SLA_STATION|CONFFLAG_SLA_TRUNK)) + st_device_state_changed("SLA:%s", conf->confno + 4); + if (AST_LIST_EMPTY(&conf->userlist)) { /* close this one when no more users and no references*/ if (!conf->refcount) @@ -1953,12 +1960,6 @@ bailoutandtrynormal: /* Return the number of seconds the user was in the conf */ snprintf(meetmesecs, sizeof(meetmesecs), "%d", (int) (time(NULL) - user->jointime)); pbx_builtin_setvar_helper(chan, "MEETMESECS", meetmesecs); - - /* This device changed state now */ - if (!conf->users) /* If there are no more members */ - ast_device_state_changed("meetme:%s", conf->confno); - if (confflags & (CONFFLAG_SLA_STATION|CONFFLAG_SLA_TRUNK)) - ast_device_state_changed("SLA:%s", conf->confno + 4); } free(user); AST_LIST_UNLOCK(&confs); |