From: Joshua Colp Date: Tue, 26 Dec 2006 05:23:25 +0000 (+0000) Subject: Merged revisions 48966 via svnmerge from X-Git-Tag: 1.6.0-beta1~3^2~3635 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b3ca8342fd76be1d7902a12f6b28238cced513ac;p=thirdparty%2Fasterisk.git 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: https://origsvn.digium.com/svn/asterisk/trunk@48967 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_meetme.c b/apps/app_meetme.c index 0a3e4a82b5..f719f8e746 100644 --- a/apps/app_meetme.c +++ b/apps/app_meetme.c @@ -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 */ + + var = ast_load_realtime("meetme", "confno", confno, NULL); - cnf = ast_calloc(1, sizeof(struct ast_conference)); - if (!cnf) { - ast_log(LOG_ERROR, "Out of memory\n"); + if (!var) return NULL; - } - var = ast_load_realtime("meetme", "confno", confno, 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); }