From: wm4 Date: Wed, 9 Sep 2015 10:06:47 +0000 (+0200) Subject: fontselect: avoid undefined behavior X-Git-Tag: 0.13.0~12 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=448bc77c909009e5a75cf93f41fcfce0ebedd7eb;p=libass fontselect: avoid undefined behavior Passing NULL as argument to %s format specifiers when using the printf fasmily of functions is not allowed. While some libcs handle it, other libcs will simply crash. --- diff --git a/libass/ass_fontselect.c b/libass/ass_fontselect.c index 4818472..19ae6d4 100644 --- a/libass/ass_fontselect.c +++ b/libass/ass_fontselect.c @@ -666,7 +666,8 @@ char *ass_font_select(ASS_FontSelector *priv, ASS_Library *library, if (res) ass_msg(library, MSGL_WARN, "fontselect: Using default " "font family: (%s, %d, %d) -> %s, %d, %s", - family, bold, italic, res, *index, *postscript_name); + family, bold, italic, res, *index, + *postscript_name ? *postscript_name : "(none)"); } if (!res && default_provider && default_provider->funcs.get_fallback) { @@ -688,13 +689,14 @@ char *ass_font_select(ASS_FontSelector *priv, ASS_Library *library, *index = priv->index_default; ass_msg(library, MSGL_WARN, "fontselect: Using default font: " "(%s, %d, %d) -> %s, %d, %s", family, bold, italic, - priv->path_default, *index, *postscript_name); + priv->path_default, *index, + *postscript_name ? *postscript_name : "(none)"); } if (res) ass_msg(library, MSGL_INFO, "fontselect: (%s, %d, %d) -> %s, %d, %s", family, bold, - italic, res, *index, *postscript_name); + italic, res, *index, *postscript_name ? *postscript_name : "(none)"); return res; }