[asterisk-commits] jpeeler: trunk r162891 - in /trunk: ./ res/res_musiconhold.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Dec 10 16:11:46 CST 2008
Author: jpeeler
Date: Wed Dec 10 16:11:46 2008
New Revision: 162891
URL: http://svn.digium.com/view/asterisk?view=rev&rev=162891
Log:
Merged revisions 162874 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162874 | jpeeler | 2008-12-10 16:04:18 -0600 (Wed, 10 Dec 2008) | 5 lines
(closes issue #13229)
Reported by: clegall_proformatique
Ensure that moh_generate does not return prematurely before local_ast_moh_stop is called. Also, the sleep in mp3_spawn now only occurs for http locations since it seems to have been added originally only for failing media streams.
........
Modified:
trunk/ (props changed)
trunk/res/res_musiconhold.c
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Modified: trunk/res/res_musiconhold.c
URL: http://svn.digium.com/view/asterisk/trunk/res/res_musiconhold.c?view=diff&rev=162891&r1=162890&r2=162891
==============================================================================
--- trunk/res/res_musiconhold.c (original)
+++ trunk/res/res_musiconhold.c Wed Dec 10 16:11:46 2008
@@ -414,7 +414,7 @@
files = 1;
} else {
dir = opendir(class->dir);
- if (!dir && !strstr(class->dir,"http://") && !strstr(class->dir,"HTTP://")) {
+ if (!dir && !strncasecmp(class->dir, "http://", 7)) {
ast_log(LOG_WARNING, "%s is not a valid directory\n", class->dir);
return -1;
}
@@ -457,8 +457,7 @@
}
}
-
- if (strstr(class->dir,"http://") || strstr(class->dir,"HTTP://")) {
+ if (!strncasecmp(class->dir, "http://", 7)) {
ast_copy_string(fns[files], class->dir, sizeof(fns[files]));
argv[argc++] = fns[files];
files++;
@@ -489,7 +488,7 @@
close(fds[1]);
return -1;
}
- if (time(NULL) - class->start < respawn_time) {
+ if (!strncasecmp(class->dir, "http://", 7) && time(NULL) - class->start < respawn_time) {
sleep(respawn_time - (time(NULL) - class->start));
}
@@ -840,8 +839,9 @@
short buf[1280 + AST_FRIENDLY_OFFSET / 2];
int res;
- if (!moh->parent->pid)
- return -1;
+ if (!moh->parent->pid && moh->parent->inuse == 0) {
+ return -1;
+ }
len = ast_codec_get_len(moh->parent->format, samples);
More information about the asterisk-commits
mailing list