void ast_deactivate_generator(struct ast_channel *chan)
{
if (chan->generatordata) {
void ast_deactivate_generator(struct ast_channel *chan)
{
if (chan->generatordata) {
- chan->generator->release(chan, chan->generatordata);
+ if (chan->generator && chan->generator->release)
+ chan->generator->release(chan, chan->generatordata);
chan->generatordata = NULL;
chan->generator = NULL;
chan->writeinterrupt = 0;
chan->generatordata = NULL;
chan->generator = NULL;
chan->writeinterrupt = 0;
int ast_activate_generator(struct ast_channel *chan, struct ast_generator *gen, void *params)
{
if (chan->generatordata) {
int ast_activate_generator(struct ast_channel *chan, struct ast_generator *gen, void *params)
{
if (chan->generatordata) {
- chan->generator->release(chan, chan->generatordata);
+ if (chan->generator && chan->generator->release)
+ chan->generator->release(chan, chan->generatordata);
chan->generatordata = NULL;
}
ast_prod(chan);
chan->generatordata = NULL;
}
ast_prod(chan);