From 1055806eebd6f62eed6651b939a2addf82f14338 Mon Sep 17 00:00:00 2001 From: Daniel Borkmann Date: Fri, 6 Apr 2012 21:30:44 +0200 Subject: [PATCH] engine: update Signed-off-by: Daniel Borkmann --- src/engine.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/engine.c b/src/engine.c index 964fb84..fbbd073 100644 --- a/src/engine.c +++ b/src/engine.c @@ -280,6 +280,7 @@ static enum engine_state_num engine_do_callout(int ssock, int *csock, int usocki memset(&msg, 0, sizeof(msg)); thdr = (struct transsip_hdr *) msg; thdr->bsy = 1; + thdr->fin = 1; sendto(ssock, msg, sizeof(*thdr), 0, &ecurr.addr, ecurr.addrlen); @@ -310,7 +311,7 @@ static enum engine_state_num engine_do_callout(int ssock, int *csock, int usocki whine("Call established!\n"); return ENGINE_STATE_SPEAKING; } - if (thdr->bsy == 1) { + if (thdr->bsy == 1 || thdr->fin == 1) { whine("Remote end busy!\n"); engine_play_busy(dev); engine_play_busy(dev); @@ -413,6 +414,7 @@ static enum engine_state_num engine_do_callin(int ssock, int *csock, int usocki, memset(&msg, 0, sizeof(msg)); thdr = (struct transsip_hdr *) msg; thdr->bsy = 1; + thdr->fin = 1; sendto(ssock, msg, sizeof(*thdr), 0, &ecurr.addr, ecurr.addrlen); -- 2.11.4.GIT