From: Sebastian Dröge Date: Mon, 2 Jun 2014 07:23:39 +0000 (+0200) Subject: glcontext: Handle (unlikely) NULL return of gl->GetString (GL_VERSION) more gracefully X-Git-Tag: 1.19.3~511^2~1989^2~1418 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=188ae1c3b04139ce223fdd5f7caaad4fe121ec9e;p=platform%2Fupstream%2Fgstreamer.git glcontext: Handle (unlikely) NULL return of gl->GetString (GL_VERSION) more gracefully CID 1219858 --- diff --git a/gst-libs/gst/gl/gstglcontext.c b/gst-libs/gst/gl/gstglcontext.c index aa5826b..82d468b 100644 --- a/gst-libs/gst/gl/gstglcontext.c +++ b/gst-libs/gst/gl/gstglcontext.c @@ -602,17 +602,20 @@ _create_context_info (GstGLContext * context, GstGLAPI gl_api, gint * gl_major, gint * gl_minor, GError ** error) { const GstGLFuncs *gl; - guint maj, min; + guint maj = 0, min = 0; GLenum gl_err = GL_NO_ERROR; - gchar *opengl_version = NULL; + const gchar *opengl_version = NULL; gl = context->gl_vtable; - GST_INFO ("GL_VERSION: %s", gl->GetString (GL_VERSION)); - GST_INFO ("GL_SHADING_LANGUAGE_VERSION: %s", - gl->GetString (GL_SHADING_LANGUAGE_VERSION)); - GST_INFO ("GL_VENDOR: %s", gl->GetString (GL_VENDOR)); - GST_INFO ("GL_RENDERER: %s", gl->GetString (GL_RENDERER)); + GST_INFO ("GL_VERSION: %s", + GST_STR_NULL ((const gchar *) gl->GetString (GL_VERSION))); + GST_INFO ("GL_SHADING_LANGUAGE_VERSION: %s", GST_STR_NULL ((const gchar *) + gl->GetString (GL_SHADING_LANGUAGE_VERSION))); + GST_INFO ("GL_VENDOR: %s", + GST_STR_NULL ((const gchar *) gl->GetString (GL_VENDOR))); + GST_INFO ("GL_RENDERER: %s", + GST_STR_NULL ((const gchar *) gl->GetString (GL_RENDERER))); gl_err = gl->GetError (); if (gl_err != GL_NO_ERROR) { @@ -621,12 +624,13 @@ _create_context_info (GstGLContext * context, GstGLAPI gl_api, gint * gl_major, return FALSE; } - opengl_version = (gchar *) gl->GetString (GL_VERSION); + opengl_version = (const gchar *) gl->GetString (GL_VERSION); if (opengl_version && gl_api & GST_GL_API_GLES2) /* gles starts with "OpenGL ES " */ opengl_version = &opengl_version[10]; - sscanf (opengl_version, "%d.%d", &maj, &min); + if (opengl_version) + sscanf (opengl_version, "%d.%d", &maj, &min); /* OpenGL > 1.2.0 */ if (gl_api & GST_GL_API_OPENGL || gl_api & GST_GL_API_OPENGL3) {