summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ådahl <jadahl@gmail.com>2020-09-08 14:22:33 +0200
committerJonas Ådahl <jadahl@gmail.com>2020-09-14 16:03:17 +0000
commit7d822459de31bdf7239fd83d67b19ae2961ef747 (patch)
tree01094618e1594d057daa73aa217bf030e6af08e1
parentd338e5eed1762a4f12b96f162aea9bcf38b99e7b (diff)
downloadmutter-7d822459de31bdf7239fd83d67b19ae2961ef747.tar.gz
cogl/renderer: Set error in dmabuf constructor fallback
When the CoglRenderer didn't set the DMA buffer constructor vfunc, we return NULL. What we didn't do was set the error, meaning the caller would crash if it tried to look up why DMA buffer construction failed. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1430
-rw-r--r--cogl/cogl/cogl-renderer.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/cogl/cogl/cogl-renderer.c b/cogl/cogl/cogl-renderer.c
index 3dc22c190..b0386fa51 100644
--- a/cogl/cogl/cogl-renderer.c
+++ b/cogl/cogl/cogl-renderer.c
@@ -31,6 +31,7 @@
#include "cogl-config.h"
+#include <gio/gio.h>
#include <stdlib.h>
#include <string.h>
@@ -768,5 +769,8 @@ cogl_renderer_create_dma_buf (CoglRenderer *renderer,
if (winsys->renderer_create_dma_buf)
return winsys->renderer_create_dma_buf (renderer, width, height, error);
+ g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+ "CoglRenderer doesn't support creating DMA buffers");
+
return NULL;
}