Merged revisions 82249 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r82249 | crichter | 2007-09-11 18:01:27 +0200 (Di, 11 Sep 2007) | 1 line

fixed a hold/retrieve issue.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82254 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Christian Richter
2007-09-11 16:15:10 +00:00
parent 88a1ae75d5
commit a5bb078177
2 changed files with 7 additions and 5 deletions

View File

@@ -4517,7 +4517,7 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
if (FD_ISSET(ch->pipe[1], &wrfs)) { if (FD_ISSET(ch->pipe[1], &wrfs)) {
chan_misdn_log(9, bc->port, "writing %d bytes 2 asterisk\n", bc->bframe_len); chan_misdn_log(9, bc->port, "writing %d bytes 2 asterisk\n", bc->bframe_len);
if (write(ch->pipe[1], bc->bframe, bc->bframe_len) <= 0) { if (write(ch->pipe[1], bc->bframe, bc->bframe_len) <= 0) {
chan_misdn_log(-1, bc->port, "Write returned <=0 (err=%s) --> hanging up channel\n", strerror(errno)); chan_misdn_log(0, bc->port, "Write returned <=0 (err=%s) --> hanging up channel\n", strerror(errno));
stop_bc_tones(ch); stop_bc_tones(ch);
hangup_chan(ch); hangup_chan(ch);
@@ -4585,7 +4585,7 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
struct ast_channel *hold_ast; struct ast_channel *hold_ast;
if (!ch) { if (!ch) {
chan_misdn_log(4, bc->port, " --> no CH, searching in holded"); chan_misdn_log(4, bc->port, " --> no CH, searching in holded\n");
ch = find_holded_l3(cl_te, bc->l3_id, 1); ch = find_holded_l3(cl_te, bc->l3_id, 1);
} }
@@ -4607,9 +4607,11 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
if (hold_ast) { if (hold_ast) {
ast_moh_stop(hold_ast); ast_moh_stop(hold_ast);
} }
if (misdn_lib_send_event(bc, EVENT_RETRIEVE_ACKNOWLEDGE) < 0) if (misdn_lib_send_event(bc, EVENT_RETRIEVE_ACKNOWLEDGE) < 0) {
chan_misdn_log(4, bc->port, " --> RETRIEVE_ACK failed\n");
misdn_lib_send_event(bc, EVENT_RETRIEVE_REJECT); misdn_lib_send_event(bc, EVENT_RETRIEVE_REJECT);
}
} }
break; break;

View File

@@ -1816,6 +1816,7 @@ handle_event_nt(void *dat, void *arg)
free(hold_bc); free(hold_bc);
bc->holded=0; bc->holded=0;
bc->b_stid=0;
} }
} }
@@ -2849,7 +2850,6 @@ static int handle_mgmt(msg_t *msg)
case SSTATUS_L1_DEACTIVATED: case SSTATUS_L1_DEACTIVATED:
cb_log(3, 0, "MGMT: SSTATUS: L1_DEACTIVATED \n"); cb_log(3, 0, "MGMT: SSTATUS: L1_DEACTIVATED \n");
stack->l1link=0; stack->l1link=0;
clear_l3(stack); clear_l3(stack);
break; break;