summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2023-05-10 00:09:03 +0200
committerBenjamin Otte <otte@redhat.com>2023-05-17 02:25:32 +0200
commit8cf93d399a1bd217cd8e05b3a0b8a035ea80ee9a (patch)
treed0e4c69cd0199817a7bc57313814cdc8a5d6fa5b
parent860c82d57648a1c64a178ab30c6d1ffcf07b5055 (diff)
downloadgtk+-8cf93d399a1bd217cd8e05b3a0b8a035ea80ee9a.tar.gz
vulkan: Don't explode without vertex data
If no buffer has any vertex data (read: if nothing gets drawn), don't try to allocate a 0 bytes buffer.
-rw-r--r--gsk/vulkan/gskvulkanrenderpass.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gsk/vulkan/gskvulkanrenderpass.c b/gsk/vulkan/gskvulkanrenderpass.c
index 0b1d431161..ac30272848 100644
--- a/gsk/vulkan/gskvulkanrenderpass.c
+++ b/gsk/vulkan/gskvulkanrenderpass.c
@@ -1807,6 +1807,9 @@ gsk_vulkan_render_pass_get_vertex_data (GskVulkanRenderPass *self,
guchar *data;
n_bytes = gsk_vulkan_render_pass_count_vertex_data (self);
+ if (n_bytes == 0)
+ return NULL;
+
self->vertex_data = gsk_vulkan_buffer_new (self->vulkan, n_bytes);
data = gsk_vulkan_buffer_map (self->vertex_data);
gsk_vulkan_render_pass_collect_vertex_data (self, render, data, 0, n_bytes);