[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41870] trunk/blender/source/blender/ makesrna/intern/rna_access.c: correct off by one error in previous commit, also add assert incase idproperty length gets out of sync.

Campbell Barton ideasman42 at gmail.com
Tue Nov 15 12:04:30 CET 2011


Revision: 41870
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41870
Author:   campbellbarton
Date:     2011-11-15 11:04:29 +0000 (Tue, 15 Nov 2011)
Log Message:
-----------
correct off by one error in previous commit, also add assert incase idproperty length gets out of sync.

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_access.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_access.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_access.c	2011-11-15 10:49:02 UTC (rev 41869)
+++ trunk/blender/source/blender/makesrna/intern/rna_access.c	2011-11-15 11:04:29 UTC (rev 41870)
@@ -2275,11 +2275,11 @@
 		/* editing bytes is not 100% supported
 		 * since they can contain NIL chars */
 		if (idprop->subtype == IDP_STRING_SUB_BYTE) {
-			memcpy(value, IDP_String(idprop), idprop->len + 1);
+			memcpy(value, IDP_String(idprop), idprop->len);
 			value[idprop->len]= '\0';
 		}
 		else {
-			strcpy(value, IDP_String(idprop));
+			memcpy(value, IDP_String(idprop), idprop->len);
 		}
 	}
 	else if(sprop->get) {
@@ -2336,6 +2336,10 @@
 			return idprop->len;
 		}
 		else {
+#ifndef NDEBUG
+			/* these _must_ stay in sync */
+			BLI_assert(strlen(IDP_String(idprop)) == idprop->len - 1);
+#endif
 			return idprop->len - 1;
 		}
 	}




More information about the Bf-blender-cvs mailing list