diff options
-rw-r--r-- | src/decoder/ffmpeg_decoder_plugin.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/decoder/ffmpeg_decoder_plugin.c b/src/decoder/ffmpeg_decoder_plugin.c index d4d6224d2..4f956f555 100644 --- a/src/decoder/ffmpeg_decoder_plugin.c +++ b/src/decoder/ffmpeg_decoder_plugin.c @@ -67,11 +67,16 @@ static void mpd_ffmpeg_log_callback(G_GNUC_UNUSED void *ptr, int level, const char *fmt, va_list vl) { - const AVClass *cls = *(const AVClass *const*)ptr; - char *domain = g_strconcat(G_LOG_DOMAIN, "/", cls->item_name(ptr), NULL); + const AVClass * cls = NULL; - g_logv(domain, level_ffmpeg_to_glib(level), fmt, vl); - g_free(domain); + if (ptr != NULL) + cls = *(const AVClass *const*)ptr; + + if (cls != NULL) { + char *domain = g_strconcat(G_LOG_DOMAIN, "/", cls->item_name(ptr), NULL); + g_logv(domain, level_ffmpeg_to_glib(level), fmt, vl); + g_free(domain); + } } #endif /* !OLD_FFMPEG_INCLUDES */ |