diff options
author | Lukasz Kostyra <l.kostyra@samsung.com> | 2021-10-20 11:31:15 +0200 |
---|---|---|
committer | Lukasz Kostyra <l.kostyra@samsung.com> | 2021-10-20 11:31:15 +0200 |
commit | 724d6455facd4ef696eef58efa982356e4671489 (patch) | |
tree | 2f315efad38cd20b87a479423c381ee05b3f6aa9 | |
parent | 547bdb963e23c9f4ea2ed90d9a7e8153254b9097 (diff) | |
download | emulator-yagl-724d6455facd4ef696eef58efa982356e4671489.tar.gz emulator-yagl-724d6455facd4ef696eef58efa982356e4671489.tar.bz2 emulator-yagl-724d6455facd4ef696eef58efa982356e4671489.zip |
yagl_gles3_program: Prevent buffer overflowsubmit/tizen/20211026.234207accepted/tizen/unified/20211028.122217
Fixes defects WGID 467867 and WGID 467868
Change-Id: I03fca7c5af1d52b6f644c4517e09ee2e931d51c7
-rw-r--r-- | GLESv2/yagl_gles3_program.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/GLESv2/yagl_gles3_program.c b/GLESv2/yagl_gles3_program.c index a304bda..b7e28d9 100644 --- a/GLESv2/yagl_gles3_program.c +++ b/GLESv2/yagl_gles3_program.c @@ -316,8 +316,8 @@ void yagl_gles3_program_get_uniform_indices(struct yagl_gles2_program *program, yagl_free(var->name); var->name = yagl_malloc(var->name_size); - strncpy(var->name, names[fetch_positions[i]], var->name_size); - var->name[var->name_size] = 0; + strncpy(var->name, names[fetch_positions[i]], var->name_size - 1); + var->name[var->name_size - 1] = 0; var->name_fetched = 1; } @@ -360,10 +360,10 @@ GLuint yagl_gles3_program_get_uniform_block_index(struct yagl_gles2_program *pro block->name_size = block_name_size + 1; yagl_free(block->name); - block->name = yagl_malloc(block_name_size); + block->name = yagl_malloc(block->name_size); - strncpy(block->name, block_name, block_name_size); - block->name[block_name_size] = 0; + strncpy(block->name, block_name, block->name_size - 1); + block->name[block->name_size - 1] = 0; block->name_fetched = 1; } |