summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2014-07-18 16:29:18 -0700
committerEric Anholt <[email protected]>2014-08-08 18:59:46 -0700
commit427f934f9e75deafdc40348aad0426ea2b31515c (patch)
tree917e8c3315d6a58f640fac71bdd98a0a140444d3
parentdb8712bcbc7875f1b7cff1cf5c6e08eed028f77f (diff)
vc4: Fix UBO allocation when no uniforms are used.
We do rely on a real BO getting allocated, so make sure we ask for a non-zero size.
-rw-r--r--src/gallium/drivers/vc4/vc4_program.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/vc4/vc4_program.c b/src/gallium/drivers/vc4/vc4_program.c
index 2107ef73c1f..4755ea0db90 100644
--- a/src/gallium/drivers/vc4/vc4_program.c
+++ b/src/gallium/drivers/vc4/vc4_program.c
@@ -606,7 +606,8 @@ vc4_get_uniform_bo(struct vc4_context *vc4, struct vc4_shader_state *shader,
uint32_t *out_offset)
{
struct vc4_shader_uniform_info *uinfo = &shader->uniforms[shader_index];
- struct vc4_bo *ubo = vc4_bo_alloc(vc4->screen, uinfo->count * 4, "ubo");
+ struct vc4_bo *ubo = vc4_bo_alloc(vc4->screen,
+ MAX2(1, uinfo->count * 4), "ubo");
uint32_t *map = vc4_bo_map(ubo);
for (int i = 0; i < uinfo->count; i++) {