aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCourtney Goeltzenleuchter <courtney@LunarG.com>2015-09-24 17:16:48 -0600
committerCourtney Goeltzenleuchter <courtney@LunarG.com>2015-09-25 15:10:35 -0600
commit874eb8df641f6557cdbe8bd2830d65138b42c80e (patch)
treefc1f08b5cdfe63cb420b1ebb4106ae167d2d741e
parentda989b59143869a5c01cc923f5e75f1598d78191 (diff)
downloadusermoji-874eb8df641f6557cdbe8bd2830d65138b42c80e.tar.xz
cube: Fix valgrind warnings
-rw-r--r--demos/cube.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/demos/cube.c b/demos/cube.c
index 86393deb..6c1f4d7e 100644
--- a/demos/cube.c
+++ b/demos/cube.c
@@ -1356,9 +1356,7 @@ static VkShader demo_prepare_shader(struct demo* demo,
moduleCreateInfo.pCode = code;
moduleCreateInfo.flags = 0;
err = vkCreateShaderModule(demo->device, &moduleCreateInfo, pShaderModule);
- if (err) {
- free((void *) moduleCreateInfo.pCode);
- }
+ assert(!err);
shaderCreateInfo.flags = 0;
shaderCreateInfo.module = *pShaderModule;
@@ -1388,6 +1386,7 @@ static VkShader demo_prepare_shader(struct demo* demo,
shaderCreateInfo.pName = "main";
shaderCreateInfo.stage = stage;
err = vkCreateShader(demo->device, &shaderCreateInfo, &shader);
+ free((void *) moduleCreateInfo.pCode);
}
return shader;
}
@@ -1418,13 +1417,16 @@ char *demo_read_spv(const char *filename, size_t *psize)
static VkShader demo_prepare_vs(struct demo *demo)
{
if (!demo->use_glsl) {
+ VkShader shader;
void *vertShaderCode;
size_t size;
vertShaderCode = demo_read_spv("cube-vert.spv", &size);
- return demo_prepare_shader(demo, VK_SHADER_STAGE_VERTEX, &demo->vert_shader_module,
- vertShaderCode, size);
+ shader = demo_prepare_shader(demo, VK_SHADER_STAGE_VERTEX, &demo->vert_shader_module,
+ vertShaderCode, size);
+ free(vertShaderCode);
+ return shader;
} else {
static const char *vertShaderText =
"#version 140\n"
@@ -1458,13 +1460,16 @@ static VkShader demo_prepare_vs(struct demo *demo)
static VkShader demo_prepare_fs(struct demo *demo)
{
if (!demo->use_glsl) {
+ VkShader shader;
void *fragShaderCode;
size_t size;
fragShaderCode = demo_read_spv("cube-frag.spv", &size);
- return demo_prepare_shader(demo, VK_SHADER_STAGE_FRAGMENT, &demo->frag_shader_module,
- fragShaderCode, size);
+ shader = demo_prepare_shader(demo, VK_SHADER_STAGE_FRAGMENT, &demo->frag_shader_module,
+ fragShaderCode, size);
+ free(fragShaderCode);
+ return shader;
} else {
static const char *fragShaderText =
"#version 140\n"
@@ -1768,6 +1773,8 @@ static void demo_cleanup(struct demo *demo)
}
free(demo->buffers);
+ free(demo->queue_props);
+
vkDestroyCommandPool(demo->device, demo->cmd_pool);
vkDestroyDevice(demo->device);
if (demo->validate) {
@@ -1778,6 +1785,7 @@ static void demo_cleanup(struct demo *demo)
#ifndef _WIN32
xcb_destroy_window(demo->connection, demo->window);
xcb_disconnect(demo->connection);
+ free(demo->atom_wm_delete_window);
#endif // _WIN32
}