From 6e469b2ac52b949ed1d1ffaad48c672bef6885e2 Mon Sep 17 00:00:00 2001 From: Andreas Frisch Date: Wed, 12 Sep 2012 14:11:28 +0200 Subject: [PATCH] playbin: subtitleoverlay: don't segfault in incorrectly init'ed plugins https://bugzilla.gnome.org/show_bug.cgi?id=683865 --- gst/playback/gstsubtitleoverlay.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/gst/playback/gstsubtitleoverlay.c b/gst/playback/gstsubtitleoverlay.c index e42f381..e54e875 100644 --- a/gst/playback/gstsubtitleoverlay.c +++ b/gst/playback/gstsubtitleoverlay.c @@ -191,11 +191,13 @@ _is_renderer (GstElementFactory * factory) klass = gst_element_factory_get_klass (factory); name = gst_plugin_feature_get_name (GST_PLUGIN_FEATURE_CAST (factory)); - if (strstr (klass, "Overlay/Subtitle") != NULL || - strstr (klass, "Overlay/SubPicture") != NULL) - return TRUE; - if (strcmp (name, "textoverlay") == 0) - return TRUE; + if (klass != NULL) { + if (strstr (klass, "Overlay/Subtitle") != NULL || + strstr (klass, "Overlay/SubPicture") != NULL) + return TRUE; + if (strcmp (name, "textoverlay") == 0) + return TRUE; + } return FALSE; } @@ -206,7 +208,7 @@ _is_parser (GstElementFactory * factory) klass = gst_element_factory_get_klass (factory); - if (strstr (klass, "Parser/Subtitle") != NULL) + if (klass != NULL && strstr (klass, "Parser/Subtitle") != NULL) return TRUE; return FALSE; } -- 2.7.4