mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 21:50:12 +01:00
glsl: always write a name/label string to the cache
In the following patch we will stop writing the pointer to cache. Unfortunately adding empty strings to that cache seems to be the only thing we can do here once we no longer have the pointers. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
parent
22154823d2
commit
44918a1979
1 changed files with 7 additions and 4 deletions
|
|
@ -1315,10 +1315,9 @@ create_linked_shader_and_program(struct gl_context *ctx,
|
|||
|
||||
/* Restore shader info */
|
||||
blob_copy_bytes(metadata, (uint8_t *) &glprog->info, sizeof(shader_info));
|
||||
if (glprog->info.name)
|
||||
glprog->info.name = ralloc_strdup(glprog, blob_read_string(metadata));
|
||||
if (glprog->info.label)
|
||||
glprog->info.label = ralloc_strdup(glprog, blob_read_string(metadata));
|
||||
|
||||
glprog->info.name = ralloc_strdup(glprog, blob_read_string(metadata));
|
||||
glprog->info.label = ralloc_strdup(glprog, blob_read_string(metadata));
|
||||
|
||||
_mesa_reference_shader_program_data(ctx, &glprog->sh.data, prog->data);
|
||||
_mesa_reference_program(ctx, &linked->Program, glprog);
|
||||
|
|
@ -1362,9 +1361,13 @@ shader_cache_write_program_metadata(struct gl_context *ctx,
|
|||
|
||||
if (sh->Program->info.name)
|
||||
blob_write_string(metadata, sh->Program->info.name);
|
||||
else
|
||||
blob_write_string(metadata, "");
|
||||
|
||||
if (sh->Program->info.label)
|
||||
blob_write_string(metadata, sh->Program->info.label);
|
||||
else
|
||||
blob_write_string(metadata, "");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue