Fix: Meetme recording variables from realtime DB use null entries over channel variables
authorJonathan Rose <jrose@digium.com>
Wed, 7 Dec 2011 20:34:23 +0000 (20:34 +0000)
committerJonathan Rose <jrose@digium.com>
Wed, 7 Dec 2011 20:34:23 +0000 (20:34 +0000)
Meetme would attempt to substitute the realtime values of RECORDING_FILE and
RECORDING_FORMAT from the meetme db entry instead of using the channel variable set
for those variables in spite of those database entries being NULL or even lacking
a column to represent them.

(closes issue ASTERISK-18873)
Reported by: Byron Clark
Patches:
ASTERISK-18873-1.patch uploaded by Byron Clark (license 6157)
........

Merged revisions 347369 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 347383 from http://svn.asterisk.org/svn/asterisk/branches/10

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@347395 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_meetme.c

index 0083414..6421f3b 100644 (file)
@@ -4043,8 +4043,12 @@ static struct ast_conference *find_conf_realtime(struct ast_channel *chan, char
                        cnf->useropts = ast_strdup(useropts);
                        cnf->adminopts = ast_strdup(adminopts);
                        cnf->bookid = ast_strdup(bookid);
-                       cnf->recordingfilename = ast_strdup(recordingfilename);
-                       cnf->recordingformat = ast_strdup(recordingformat);
+                       if (!ast_strlen_zero(recordingfilename)) {
+                               cnf->recordingfilename = ast_strdup(recordingfilename);
+                       }
+                       if (!ast_strlen_zero(recordingformat)) {
+                               cnf->recordingformat = ast_strdup(recordingformat);
+                       }
 
                        /* Parse the other options into confflags -- need to do this in two
                         * steps, because the parse_options routine zeroes the buffer. */