Commit 6a958980 authored by Charles Kerr's avatar Charles Kerr Committed by Max Kellermann

decoder/ffmpeg: fix crash on startup in mpd_ffmpeg_log_callback()

What's happening is the `ptr' argument to that function is NULL for me every time. `ptr' is unconditionally dereferenced to generate a log message, and this is where mpd crashes. Attached is a simple patch that tests for NULL and omits the log. With this patch the crash disappeared and mpd went back to working well.
parent c52f469c
......@@ -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 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment