summaryrefslogtreecommitdiff
path: root/main/channel.c
diff options
context:
space:
mode:
Diffstat (limited to 'main/channel.c')
-rw-r--r--main/channel.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/main/channel.c b/main/channel.c
index 346554a29..e1569aec5 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -1711,9 +1711,13 @@ static int generator_force(const void *data)
ast_channel_lock(chan);
tmp = chan->generatordata;
chan->generatordata = NULL;
- generate = chan->generator->generate;
+ if (chan->generator)
+ generate = chan->generator->generate;
ast_channel_unlock(chan);
+ if (!tmp || !generate)
+ return 0;
+
res = generate(chan, tmp, 0, 160);
chan->generatordata = tmp;