aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/channel.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/main/channel.c b/main/channel.c
index 2cb3b7be3..d148cd97d 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -1560,9 +1560,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;