Merged revisions 48966 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r48966 | file | 2006-12-26 00:20:08 -0500 (Tue, 26 Dec 2006) | 2 lines Get rid of a needless memory allocation and only create a conference structure in find_conf_realtime if data was read from realtime. (issue #8669 reported by robl) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@48967 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
parent
1aba4079bc
commit
7b32df306c
|
@ -1979,25 +1979,21 @@ static struct ast_conference *find_conf_realtime(struct ast_channel *chan, char
|
|||
if (!strcmp(confno, cnf->confno))
|
||||
break;
|
||||
}
|
||||
if (cnf){
|
||||
if (cnf) {
|
||||
cnf->refcount += refcount;
|
||||
}
|
||||
AST_LIST_UNLOCK(&confs);
|
||||
|
||||
if (!cnf) {
|
||||
char *pin = NULL, *pinadmin = NULL; /* For temp use */
|
||||
|
||||
cnf = ast_calloc(1, sizeof(struct ast_conference));
|
||||
if (!cnf) {
|
||||
ast_log(LOG_ERROR, "Out of memory\n");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
var = ast_load_realtime("meetme", "confno", confno, NULL);
|
||||
|
||||
if (!var)
|
||||
return NULL;
|
||||
|
||||
while (var) {
|
||||
if (!strcasecmp(var->name, "confno")) {
|
||||
ast_copy_string(cnf->confno, var->value, sizeof(cnf->confno));
|
||||
} else if (!strcasecmp(var->name, "pin")) {
|
||||
if (!strcasecmp(var->name, "pin")) {
|
||||
pin = ast_strdupa(var->value);
|
||||
} else if (!strcasecmp(var->name, "adminpin")) {
|
||||
pinadmin = ast_strdupa(var->value);
|
||||
|
@ -2005,7 +2001,7 @@ static struct ast_conference *find_conf_realtime(struct ast_channel *chan, char
|
|||
var = var->next;
|
||||
}
|
||||
ast_variables_destroy(var);
|
||||
|
||||
|
||||
cnf = build_conf(confno, pin ? pin : "", pinadmin ? pinadmin : "", make, dynamic, refcount);
|
||||
}
|
||||
|
||||
|
|
Reference in New Issue