]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
automerge commit
authorAutomerge script <automerge@asterisk.org>
Thu, 23 Mar 2006 21:07:45 +0000 (21:07 +0000)
committerAutomerge script <automerge@asterisk.org>
Thu, 23 Mar 2006 21:07:45 +0000 (21:07 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.2-netsec@14515 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_meetme.c
apps/app_readfile.c

index c66410339ee2972b435e0b4c2943eb73bdeeb519..9bfbc88927dcca654e43b4dccd23799809cde927 100644 (file)
@@ -737,6 +737,8 @@ static void conf_flush(int fd, struct ast_channel *chan)
                        f = ast_read(chan);
                        if (f)
                                ast_frfree(f);
+                       else /* channel was hung up or something else happened */
+                               break;
                }
        }
 
index 3340964b7f277a68f5dffb0ff17398f3efd66dfd..bc418aaa17956b3b478af94c337cb1566f0b4806 100644 (file)
@@ -95,15 +95,16 @@ static int readfile_exec(struct ast_channel *chan, void *data)
                }
        }
 
-       returnvar = ast_read_textfile(file);
-       if(len > 0){
-               if(len < strlen(returnvar))
-                       returnvar[len]='\0';
-               else
-                       ast_log(LOG_WARNING,"%s is longer than %d, and %d \n", file, len, (int)strlen(returnvar));
+       if ((returnvar = ast_read_textfile(file))) {
+               if (len > 0) {
+                       if (len < strlen(returnvar))
+                               returnvar[len]='\0';
+                       else
+                               ast_log(LOG_WARNING, "%s is longer than %d, and %d \n", file, len, (int)strlen(returnvar));
+               }
+               pbx_builtin_setvar_helper(chan, varname, returnvar);
+               free(returnvar);
        }
-       pbx_builtin_setvar_helper(chan, varname, returnvar);
-       free(returnvar);
        LOCAL_USER_REMOVE(u);
        return res;
 }