diff options
| -rw-r--r-- | demos/cube.c | 3 | ||||
| -rw-r--r-- | demos/tri.c | 22 |
2 files changed, 7 insertions, 18 deletions
diff --git a/demos/cube.c b/demos/cube.c index fcec0e04..6553962e 100644 --- a/demos/cube.c +++ b/demos/cube.c @@ -1808,9 +1808,6 @@ static void demo_cleanup(struct demo *demo) xglDestroyObject(demo->buffers[i].view); xglDestroyObject(demo->buffers[i].image); xglDestroyObject(demo->buffers[i].cmd); -#if defined(XCB_NVIDIA) - xglFreeMemory(demo->buffers[i].mem); -#endif } xglDestroyDevice(demo->device); diff --git a/demos/tri.c b/demos/tri.c index a835c7f7..7262ff3b 100644 --- a/demos/tri.c +++ b/demos/tri.c @@ -44,8 +44,7 @@ struct demo { struct { XGL_IMAGE image; - uint32_t num_mem; - XGL_GPU_MEMORY *mem; + XGL_GPU_MEMORY mem; XGL_COLOR_ATTACHMENT_VIEW view; XGL_FENCE fence; @@ -206,8 +205,9 @@ static void demo_draw(struct demo *demo) uint32_t i, idx = 0; XGL_MEMORY_REF *memRefs = 0; - memRefs = malloc(sizeof(XGL_MEMORY_REF) * (2 + demo->depth.num_mem + - demo->textures[0].num_mem + demo->vertices.num_mem)); + memRefs = malloc(sizeof(XGL_MEMORY_REF) * (DEMO_BUFFER_COUNT + + demo->depth.num_mem + demo->textures[0].num_mem + + demo->vertices.num_mem)); for (i = 0; i < demo->depth.num_mem; i++, idx++) { memRefs[idx].mem = demo->depth.mem[i]; memRefs[idx].flags = 0; @@ -217,10 +217,8 @@ static void demo_draw(struct demo *demo) memRefs[idx].flags = 0; } for (i = 0; i < DEMO_BUFFER_COUNT; i++) { - for (uint32_t j = 0; j < demo->buffers[i].num_mem; j++) { - memRefs[idx].mem = demo->buffers[i].mem[j]; - memRefs[idx++].flags = 0; - } + memRefs[idx].mem = demo->buffers[i].mem; + memRefs[idx++].flags = 0; } for (i = 0; i < demo->vertices.num_mem; i++, idx++) { memRefs[idx].mem = demo->vertices.mem[i]; @@ -267,9 +265,8 @@ static void demo_prepare_buffers(struct demo *demo) demo->buffers[i].mem = malloc(sizeof(XGL_GPU_MEMORY)); err = xglWsiX11CreatePresentableImage(demo->device, &presentable_image, - &demo->buffers[i].image, &demo->buffers[i].mem[0]); + &demo->buffers[i].image, &demo->buffers[i].mem); assert(!err); - demo->buffers[i].num_mem = 1; color_attachment_view.image = demo->buffers[i].image; @@ -1322,11 +1319,6 @@ static void demo_cleanup(struct demo *demo) xglDestroyObject(demo->buffers[i].fence); xglDestroyObject(demo->buffers[i].view); xglDestroyObject(demo->buffers[i].image); -#if defined(XCB_NVIDIA) - for (j = 0; j < demo->buffers[i].num_mem; j++) - xglFreeMemory(demo->buffers[i].mem[j]); -#endif - free(demo->buffers[i].mem); } xglDestroyDevice(demo->device); |
