mesa: track ParameterValues size separately
This is needed for multi-slot parameters. Reviewed-by: Zoltán Böszörményi <zboszor@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6946>
This commit is contained in:
@@ -659,7 +659,7 @@ add_parameter(struct gl_uniform_storage *uniform,
|
||||
|
||||
struct gl_program_parameter_list *params = state->params;
|
||||
int base_index = params->NumParameters;
|
||||
_mesa_reserve_parameter_storage(params, num_params);
|
||||
_mesa_reserve_parameter_storage(params, num_params, num_params);
|
||||
|
||||
if (ctx->Const.PackedDriverUniformStorage) {
|
||||
for (unsigned i = 0; i < num_params; i++) {
|
||||
|
@@ -1054,7 +1054,7 @@ read_shader_parameters(struct blob_reader *metadata,
|
||||
uint32_t i = 0;
|
||||
uint32_t num_parameters = blob_read_uint32(metadata);
|
||||
|
||||
_mesa_reserve_parameter_storage(params, num_parameters);
|
||||
_mesa_reserve_parameter_storage(params, num_parameters, num_parameters);
|
||||
while (i < num_parameters) {
|
||||
gl_register_file type = (gl_register_file) blob_read_uint32(metadata);
|
||||
const char *name = blob_read_string(metadata);
|
||||
|
Reference in New Issue
Block a user