if ((error = avformat_open_input(&context->fc, filename, NULL, NULL)) < 0) {
char ebuf[255] = "";
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Could not open input file '%s' (error '%s')\n", filename, get_error_text(error, ebuf, sizeof(ebuf)));
- avformat_free_context(context->fc);
- context->fc = NULL;
switch_goto_status(SWITCH_STATUS_FALSE, err);
}
return status;
err:
+ if (context->fc) {
+ avformat_free_context(context->fc);
+ context->fc = NULL;
+ }
+
/*
if (context->has_video) close_stream(context->fc, &context->video_st);
if (context->has_audio) close_stream(context->fc, &context->audio_st);