From a8d3ee89c6ad714d27810ee68ca203259d0471fe Mon Sep 17 00:00:00 2001 From: Tilghman Lesher <tilghman@meg.abyt.es> Date: Tue, 24 Oct 2006 03:09:48 +0000 Subject: [PATCH] Merged revisions 46078 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r46078 | tilghman | 2006-10-23 22:01:00 -0500 (Mon, 23 Oct 2006) | 3 lines Pass through a frame if we don't know what it is, rather than trying to pass a NULL, which will segfault a channel driver (Bug 8149) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46079 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/channel.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/main/channel.c b/main/channel.c index 9a53205ce0..65572d3e84 100644 --- a/main/channel.c +++ b/main/channel.c @@ -2615,7 +2615,10 @@ int ast_write(struct ast_channel *chan, struct ast_frame *fr) res = 0; break; default: - res = chan->tech->write(chan, f); + /* At this point, fr is the incoming frame and f is NULL. Channels do + * not expect to get NULL as a frame pointer and will segfault. Hence, + * we output the original frame passed in. */ + res = chan->tech->write(chan, fr); break; } -- GitLab