diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2015-09-24 18:24:20 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2015-09-24 18:24:20 +0300 |
commit | 27b3ea622f8bd313a8e2827dfec752bf2125566c (patch) | |
tree | f212e49d224ce8e1cfc3b17a64ae524711494391 /source/blender/blenlib/BLI_mempool.h | |
parent | 372dff8d1dc7e24d4b2cd37de245588ecfce8bfa (diff) | |
parent | de80e687689032cb85179a1f7e89750573631d5d (diff) |
Merge remote-tracking branch 'origin/master' into cycles_camera_nodescycles_camera_nodes
Note: the branch currently crashes in blender_camera_nodes.cpp:
BL::NodeTree b_ntree = b_data.node_groups[nodes_tree_name];
The crash was introduced in:
cb7cf523e5c000609f32a382e2c0fcc57f635a42
Conflicts:
intern/cycles/SConscript
intern/cycles/blender/addon/__init__.py
intern/cycles/blender/addon/properties.py
intern/cycles/blender/blender_camera.cpp
intern/cycles/kernel/kernel_types.h
intern/cycles/kernel/svm/svm.h
intern/cycles/kernel/svm/svm_types.h
intern/cycles/render/camera.cpp
intern/cycles/render/camera.h
Diffstat (limited to 'source/blender/blenlib/BLI_mempool.h')
-rw-r--r-- | source/blender/blenlib/BLI_mempool.h | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/source/blender/blenlib/BLI_mempool.h b/source/blender/blenlib/BLI_mempool.h index 25694f4445b..0c754f551e0 100644 --- a/source/blender/blenlib/BLI_mempool.h +++ b/source/blender/blenlib/BLI_mempool.h @@ -30,8 +30,6 @@ /** \file BLI_mempool.h * \ingroup bli - * \author Geoffrey Bantle - * \brief Simple fast memory allocator for fixed size chunks. */ #ifdef __cplusplus @@ -46,10 +44,6 @@ struct BLI_mempool_chunk; typedef struct BLI_mempool BLI_mempool; -/* allow_iter allows iteration on this mempool. note: this requires that the - * first four bytes of the elements never contain the character string - * 'free'. use with care.*/ - BLI_mempool *BLI_mempool_create(unsigned int esize, unsigned int totelem, unsigned int pchunk, unsigned int flag) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT; void *BLI_mempool_alloc(BLI_mempool *pool) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1); @@ -67,7 +61,7 @@ void **BLI_mempool_as_tableN(BLI_mempool *pool, const char *allocstr) ATTR_ void BLI_mempool_as_array(BLI_mempool *pool, void *data) ATTR_NONNULL(1, 2); void *BLI_mempool_as_arrayN(BLI_mempool *pool, const char *allocstr) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1, 2); -#ifdef DEBUG +#ifndef NDEBUG void BLI_mempool_set_memory_debug(void); #endif @@ -82,6 +76,11 @@ typedef struct BLI_mempool_iter { /* flag */ enum { BLI_MEMPOOL_NOP = 0, + /** allow iterating on this mempool. + * + * \note this requires that the first four bytes of the elements never begin with 'free' (FREEWORD). + * \note order of iteration is only assured to be the order of allocation when no chunks have been freed. + */ BLI_MEMPOOL_ALLOW_ITER = (1 << 0), }; |