OSDN Git Service

anv/cmd_buffer: Don't crash if push constants are provided for missing stages
authorJason Ekstrand <jason.ekstrand@intel.com>
Wed, 15 Jun 2016 21:30:33 +0000 (14:30 -0700)
committerEmil Velikov <emil.l.velikov@gmail.com>
Tue, 21 Jun 2016 10:44:48 +0000 (11:44 +0100)
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Cc: "12.0" <mesa-stable@lists.freedesktop.org>
(cherry picked from commit b65f2e4163c9180e6a022c0afec018b08e4c5aa5)

src/intel/vulkan/anv_cmd_buffer.c

index 5be5f3e..24c18fe 100644 (file)
@@ -1038,7 +1038,7 @@ anv_cmd_buffer_push_constants(struct anv_cmd_buffer *cmd_buffer,
       cmd_buffer->state.pipeline->prog_data[stage];
 
    /* If we don't actually have any push constants, bail. */
-   if (data == NULL || prog_data->nr_params == 0)
+   if (data == NULL || prog_data == NULL || prog_data->nr_params == 0)
       return (struct anv_state) { .offset = 0 };
 
    struct anv_state state =