diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-08-04 04:01:41 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-08-04 04:01:41 +0400 |
commit | 5881fe5d679b38eb40b59c1af3bc3db88a53f35d (patch) | |
tree | 38e130faf7aee14f0017545af15c637a45a86778 /source/blender/makesrna/intern/makesrna.c | |
parent | dd037a85a02b9344045c6f4cb8ff792827b69eff (diff) |
avoid runtime overflow (1 << 31), for RNA and armature layer UI.
Diffstat (limited to 'source/blender/makesrna/intern/makesrna.c')
-rw-r--r-- | source/blender/makesrna/intern/makesrna.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/makesrna/intern/makesrna.c b/source/blender/makesrna/intern/makesrna.c index f382caaccba..5237c97ef71 100644 --- a/source/blender/makesrna/intern/makesrna.c +++ b/source/blender/makesrna/intern/makesrna.c @@ -646,13 +646,14 @@ static char *rna_def_property_get_func(FILE *f, StructRNA *srna, PropertyRNA *pr if (prop->flag & PROP_DYNAMIC) { char *lenfunc = rna_alloc_function_name(srna->identifier, rna_safe_id(prop->identifier), "get_length"); - fprintf(f, " int i, arraylen[RNA_MAX_ARRAY_DIMENSION];\n"); - fprintf(f, " int len = %s(ptr, arraylen);\n\n", lenfunc); + fprintf(f, " unsigned int arraylen[RNA_MAX_ARRAY_DIMENSION];\n"); + fprintf(f, " unsigned int i;\n"); + fprintf(f, " unsigned int len = %s(ptr, arraylen);\n\n", lenfunc); fprintf(f, " for (i = 0; i < len; i++) {\n"); MEM_freeN(lenfunc); } else { - fprintf(f, " int i;\n\n"); + fprintf(f, " unsigned int i;\n\n"); fprintf(f, " for (i = 0; i < %u; i++) {\n", prop->totarraylength); } |