[Bf-blender-cvs] [77a15ab] master: IDProp API: change IDP_NewString so `sizeof()` can be passed in.
Campbell Barton
noreply at git.blender.org
Sat Feb 15 02:33:43 CET 2014
Commit: 77a15aba38f00cd2694bb7c463057cada0690e50
Author: Campbell Barton
Date: Sat Feb 15 12:31:58 2014 +1100
https://developer.blender.org/rB77a15aba38f00cd2694bb7c463057cada0690e50
IDProp API: change IDP_NewString so `sizeof()` can be passed in.
===================================================================
M source/blender/blenkernel/intern/idprop.c
M source/blender/makesrna/intern/rna_access.c
===================================================================
diff --git a/source/blender/blenkernel/intern/idprop.c b/source/blender/blenkernel/intern/idprop.c
index 0596c51..603ddf7 100644
--- a/source/blender/blenkernel/intern/idprop.c
+++ b/source/blender/blenkernel/intern/idprop.c
@@ -334,13 +334,12 @@ IDProperty *IDP_NewString(const char *st, const char *name, int maxlen)
prop->len = 1; /* NULL string, has len of 1 to account for null byte. */
}
else {
- int stlen = strlen(st);
+ /* include null terminator '\0' */
+ int stlen = strlen(st) + 1;
if (maxlen > 0 && maxlen < stlen)
stlen = maxlen;
- stlen++; /* null terminator '\0' */
-
prop->data.pointer = MEM_mallocN(stlen, "id property string 2");
prop->len = prop->totallen = stlen;
BLI_strncpy(prop->data.pointer, st, stlen);
diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c
index 7946d24..a3dee92 100644
--- a/source/blender/makesrna/intern/rna_access.c
+++ b/source/blender/makesrna/intern/rna_access.c
@@ -2594,7 +2594,7 @@ void RNA_property_string_set(PointerRNA *ptr, PropertyRNA *prop, const char *val
group = RNA_struct_idprops(ptr, 1);
if (group)
- IDP_AddToGroup(group, IDP_NewString(value, prop->identifier, RNA_property_string_maxlength(prop) - 1));
+ IDP_AddToGroup(group, IDP_NewString(value, prop->identifier, RNA_property_string_maxlength(prop)));
}
}
More information about the Bf-blender-cvs
mailing list