aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2005-11-06 04:44:19 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2005-11-06 04:44:19 +0000
commit0f4e00cac3b17e192485d622a26d9ecc7ae2825d (patch)
treed6e14cde9b5ef8cb93a5ed7d8946cfb0083e49d9
parent060f83d8292601bfd5617a3455a3bba7033da9bd (diff)
Fix chan_oss buglets (bug #5618)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6967 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xchannels/chan_oss.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/channels/chan_oss.c b/channels/chan_oss.c
index ef163f43a..386199628 100755
--- a/channels/chan_oss.c
+++ b/channels/chan_oss.c
@@ -845,6 +845,7 @@ static int oss_indicate(struct ast_channel *c, int cond)
case -1:
o->cursound = -1;
+ o->nosound = 0; /* when cursound is -1 nosound must be 0 */
return 0;
case AST_CONTROL_VIDUPDATE:
@@ -1081,6 +1082,7 @@ static int console_flash(int fd, int argc, char *argv[])
if (argc != 1)
return RESULT_SHOWUSAGE;
o->cursound = -1;
+ o->nosound = 0; /* when cursound is -1 nosound must be 0 */
if (!o->owner) { /* XXX maybe !o->hookstate too ? */
ast_cli(fd, "No call to flash\n");
return RESULT_FAILURE;
@@ -1293,6 +1295,7 @@ static struct chan_oss_pvt * store_config(struct ast_config *cfg, char *ctg)
o->name = strdup(ctg);
}
+ o->lastopen = ast_tvnow(); /* don't leave it 0 or tvdiff may wrap */
/* fill other fields from configuration */
for (v = ast_variable_browse(cfg, ctg);v; v=v->next) {
M_START(v->name, v->value);