From 4ded5f3254c9ac79e183148519ff03dbce3307a5 Mon Sep 17 00:00:00 2001 From: sobomax Date: Wed, 12 Nov 2008 18:45:25 +0000 Subject: Fix a bug resulting in recording hanging up indefinitely when connection to peer drops. --- net/asterisk10/Makefile | 2 +- net/asterisk10/files/patch-res_res__agi.c | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 net/asterisk10/files/patch-res_res__agi.c (limited to 'net/asterisk10') diff --git a/net/asterisk10/Makefile b/net/asterisk10/Makefile index fd8954ffa311..1c543a0c4574 100644 --- a/net/asterisk10/Makefile +++ b/net/asterisk10/Makefile @@ -7,7 +7,7 @@ PORTNAME= asterisk PORTVERSION= 1.4.21.2 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= net MASTER_SITES= http://ftp.digium.com/pub/asterisk/ \ http://ftp.digium.com/pub/asterisk/old-releases/ diff --git a/net/asterisk10/files/patch-res_res__agi.c b/net/asterisk10/files/patch-res_res__agi.c new file mode 100644 index 000000000000..2e2f3c68a5ec --- /dev/null +++ b/net/asterisk10/files/patch-res_res__agi.c @@ -0,0 +1,14 @@ + +$FreeBSD$ + +--- res/res_agi.c ++++ res/res_agi.c +@@ -969,7 +969,7 @@ + + start = ast_tvnow(); + while ((ms < 0) || ast_tvdiff_ms(ast_tvnow(), start) < ms) { +- res = ast_waitfor(chan, -1); ++ res = ast_waitfor(chan, ms - ast_tvdiff_ms(ast_tvnow(), start)); + if (res < 0) { + ast_closestream(fs); + fdprintf(agi->fd, "200 result=%d (waitfor) endpos=%ld\n", res,sample_offset); -- cgit