Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2019-05-13 16:57:03 +0300
committerClément Foucault <foucault.clem@gmail.com>2019-05-14 11:57:03 +0300
commite5349f14eb17689316ab5a85a7d4ffbb740ec93c (patch)
tree3ad2b81b1db82c932c67f2bf573265e772be1520 /source/blender/draw/intern
parent0e5da91f0aa534c3dfdb6a650cfb067fa84099da (diff)
BLI_memblock: Add more options
- Use int instead of uint for safety and less conversions. - Add free callback - Add cleared alloc option
Diffstat (limited to 'source/blender/draw/intern')
-rw-r--r--source/blender/draw/intern/draw_manager.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 1d215dcefe1..f4830916ecf 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -535,12 +535,12 @@ static void drw_viewport_cache_resize(void)
GPU_texture_free(*tex);
}
- BLI_memblock_clear(DST.vmempool->calls);
- BLI_memblock_clear(DST.vmempool->states);
- BLI_memblock_clear(DST.vmempool->shgroups);
- BLI_memblock_clear(DST.vmempool->uniforms);
- BLI_memblock_clear(DST.vmempool->passes);
- BLI_memblock_clear(DST.vmempool->images);
+ BLI_memblock_clear(DST.vmempool->calls, NULL);
+ BLI_memblock_clear(DST.vmempool->states, NULL);
+ BLI_memblock_clear(DST.vmempool->shgroups, NULL);
+ BLI_memblock_clear(DST.vmempool->uniforms, NULL);
+ BLI_memblock_clear(DST.vmempool->passes, NULL);
+ BLI_memblock_clear(DST.vmempool->images, NULL);
}
DRW_instance_data_list_free_unused(DST.idatalist);
@@ -605,22 +605,22 @@ static void drw_viewport_var_init(void)
DST.vmempool = GPU_viewport_mempool_get(DST.viewport);
if (DST.vmempool->calls == NULL) {
- DST.vmempool->calls = BLI_memblock_create(sizeof(DRWCall));
+ DST.vmempool->calls = BLI_memblock_create(sizeof(DRWCall), false);
}
if (DST.vmempool->states == NULL) {
- DST.vmempool->states = BLI_memblock_create(sizeof(DRWCallState));
+ DST.vmempool->states = BLI_memblock_create(sizeof(DRWCallState), false);
}
if (DST.vmempool->shgroups == NULL) {
- DST.vmempool->shgroups = BLI_memblock_create(sizeof(DRWShadingGroup));
+ DST.vmempool->shgroups = BLI_memblock_create(sizeof(DRWShadingGroup), false);
}
if (DST.vmempool->uniforms == NULL) {
- DST.vmempool->uniforms = BLI_memblock_create(sizeof(DRWUniform));
+ DST.vmempool->uniforms = BLI_memblock_create(sizeof(DRWUniform), false);
}
if (DST.vmempool->passes == NULL) {
- DST.vmempool->passes = BLI_memblock_create(sizeof(DRWPass));
+ DST.vmempool->passes = BLI_memblock_create(sizeof(DRWPass), false);
}
if (DST.vmempool->images == NULL) {
- DST.vmempool->images = BLI_memblock_create(sizeof(GPUTexture *));
+ DST.vmempool->images = BLI_memblock_create(sizeof(GPUTexture *), false);
}
DST.idatalist = GPU_viewport_instance_data_list_get(DST.viewport);