summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeon/radeon_elf_util.c
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-02-11 23:20:38 +0100
committerMarek Olšák <marek.olsak@amd.com>2016-02-21 21:08:58 +0100
commit50ac2612d08f2425972dde42e32a71fdce70cebd (patch)
tree4b84ce4ebdeea30a75b4a2faf3070ee92510b5e7 /src/gallium/drivers/radeon/radeon_elf_util.c
parent1fe73d55e3f92b1dfbd619d46fd892fd169ae796 (diff)
downloadexternal_mesa3d-50ac2612d08f2425972dde42e32a71fdce70cebd.zip
external_mesa3d-50ac2612d08f2425972dde42e32a71fdce70cebd.tar.gz
external_mesa3d-50ac2612d08f2425972dde42e32a71fdce70cebd.tar.bz2
radeonsi: make radeon_shader_reloc name string fixed-sized
This will simplify implementations of binary shaders. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeon/radeon_elf_util.c')
-rw-r--r--src/gallium/drivers/radeon/radeon_elf_util.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/gallium/drivers/radeon/radeon_elf_util.c b/src/gallium/drivers/radeon/radeon_elf_util.c
index 2e45d43..70a2c4d 100644
--- a/src/gallium/drivers/radeon/radeon_elf_util.c
+++ b/src/gallium/drivers/radeon/radeon_elf_util.c
@@ -98,7 +98,8 @@ static void parse_relocs(Elf *elf, Elf_Data *relocs, Elf_Data *symbols,
symbol_name = elf_strptr(elf, symbol_sh_link, symbol.st_name);
reloc->offset = rel.r_offset;
- reloc->name = strdup(symbol_name);
+ strncpy(reloc->name, symbol_name, sizeof(reloc->name)-1);
+ reloc->name[sizeof(reloc->name)-1] = 0;
}
}
@@ -198,10 +199,6 @@ const unsigned char *radeon_shader_binary_config_start(
void radeon_shader_binary_free_relocs(struct radeon_shader_reloc *relocs,
unsigned reloc_count)
{
- unsigned i;
- for (i = 0; i < reloc_count; i++) {
- FREE(relocs[i].name);
- }
FREE(relocs);
}