st/mesa: improve error messages and fix security warning
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Thu, 30 Mar 2017 09:22:23 +0000 (11:22 +0200)
committerNicolai Hähnle <nicolai.haehnle@amd.com>
Thu, 30 Mar 2017 09:24:36 +0000 (11:24 +0200)
Debian, Ubuntu set default build flag: -Werror=format-security

  CC       state_tracker/st_cb_texturebarrier.lo
state_tracker/st_cb_eglimage.c: In function ‘st_egl_image_get_surface’:
state_tracker/st_cb_eglimage.c:64:7: error: format not a string literal and no format arguments [-Werror=format-security]
       _mesa_error(ctx, GL_INVALID_VALUE, error);
       ^~~~~~~~~~~
state_tracker/st_cb_eglimage.c:71:7: error: format not a string literal and no format arguments [-Werror=format-security]
       _mesa_error(ctx, GL_INVALID_OPERATION, error);
       ^~~~~~~~~~~

Reported-by: Krzysztof Kolasa <kkolasa@winsoft.pl>
Fixes: 83e9de25f325 ("st/mesa: EGLImageTarget* error handling")
src/mesa/state_tracker/st_cb_eglimage.c

index 158a824e593ceca1f652e65877251c9e6e5cbfc3..3a62ef7304d2a9d9333fa0825bb9a27a52ce25fe 100644 (file)
@@ -61,14 +61,14 @@ st_egl_image_get_surface(struct gl_context *ctx, GLeglImageOES image_handle,
    memset(&stimg, 0, sizeof(stimg));
    if (!smapi->get_egl_image(smapi, (void *) image_handle, &stimg)) {
       /* image_handle does not refer to a valid EGL image object */
-      _mesa_error(ctx, GL_INVALID_VALUE, error);
+      _mesa_error(ctx, GL_INVALID_VALUE, "%s(image handle not found)", error);
       return NULL;
    }
 
    if (!screen->is_format_supported(screen, stimg.format, PIPE_TEXTURE_2D,
                                     stimg.texture->nr_samples, usage)) {
       /* unable to specify a texture object using the specified EGL image */
-      _mesa_error(ctx, GL_INVALID_OPERATION, error);
+      _mesa_error(ctx, GL_INVALID_OPERATION, "%s(format not supported)", error);
       return NULL;
    }