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:
authorCampbell Barton <ideasman42@gmail.com>2011-01-12 09:16:15 +0300
committerCampbell Barton <ideasman42@gmail.com>2011-01-12 09:16:15 +0300
commitbaaaceb3eb41381c095f142c790a2c163752cdd5 (patch)
treebf36af6590206f734d826d89af5d79bd5d77d759 /source/blender/makesrna/intern/rna_internal.h
parent9a70c609e00f952584a356b4ddc8fa3240438a12 (diff)
comment array/collection skip(), since there was some confusion in this area which caused bugs on index lookups.
Diffstat (limited to 'source/blender/makesrna/intern/rna_internal.h')
-rw-r--r--source/blender/makesrna/intern/rna_internal.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_internal.h b/source/blender/makesrna/intern/rna_internal.h
index 39f12c56e1c..a512bb93d6b 100644
--- a/source/blender/makesrna/intern/rna_internal.h
+++ b/source/blender/makesrna/intern/rna_internal.h
@@ -321,10 +321,15 @@ PointerRNA rna_listbase_lookup_int(PointerRNA *ptr, StructRNA *type, struct List
typedef struct ArrayIterator {
char *ptr;
- char *endptr;
+ char *endptr; /* past the last valid pointer, only for comparisons, ignores skipped values */
void *free_ptr; /* will be free'd if set */
int itemsize;
+
+ /* array length with no skip functins applied, take care not to compare against index from animsys or python indicies */
int length;
+
+ /* optional skip function, when set the array as viewed by rna can contain only a subset of the members.
+ * this changes indicies so quick array index lookups are not possible when skip function is used. */
IteratorSkipFunc skip;
} ArrayIterator;