yagl_free(var->name);
var->name = yagl_malloc(var->name_size);
- strcpy(var->name, names[fetch_positions[i]]);
+ strncpy(var->name, names[fetch_positions[i]], var->name_size);
+ var->name[var->name_size] = 0;
var->name_fetched = 1;
}
if ((i != GL_INVALID_INDEX) && (i < program->num_active_uniform_blocks)) {
block = &program->active_uniform_blocks[i];
- block->name_size = block_name_size;
+ block->name_size = block_name_size + 1;
yagl_free(block->name);
block->name = yagl_malloc(block_name_size);
- strcpy(block->name, block_name);
+ strncpy(block->name, block_name, block_name_size);
+ block->name[block_name_size] = 0;
block->name_fetched = 1;
}