[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60797] trunk/blender/source/blender: add IDP_FreeFromGroup(), replaces IDP_RemFromGroup(), IDP_FreeProperty(), MEM_freeN().

Campbell Barton ideasman42 at gmail.com
Wed Oct 16 07:29:28 CEST 2013


Revision: 60797
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60797
Author:   campbellbarton
Date:     2013-10-16 05:29:28 +0000 (Wed, 16 Oct 2013)
Log Message:
-----------
add IDP_FreeFromGroup(), replaces IDP_RemFromGroup(), IDP_FreeProperty(), MEM_freeN().

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_idprop.h
    trunk/blender/source/blender/blenkernel/intern/idprop.c
    trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c
    trunk/blender/source/blender/makesrna/intern/rna_access.c
    trunk/blender/source/blender/python/generic/idprop_py_api.c

Modified: trunk/blender/source/blender/blenkernel/BKE_idprop.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_idprop.h	2013-10-16 05:24:55 UTC (rev 60796)
+++ trunk/blender/source/blender/blenkernel/BKE_idprop.h	2013-10-16 05:29:28 UTC (rev 60797)
@@ -94,7 +94,8 @@
 int IDP_AddToGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
 int IDP_InsertToGroup(struct IDProperty *group, struct IDProperty *previous, 
                       struct IDProperty *pnew) ATTR_NONNULL(1 /* group */, 3 /* pnew */);
-void IDP_RemFromGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
+void IDP_RemoveFromGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
+void IDP_FreeFromGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
 
 IDProperty *IDP_GetPropertyFromGroup(struct IDProperty *prop, const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
 IDProperty *IDP_GetPropertyTypeFromGroup(struct IDProperty *prop, const char *name, const char type) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();

Modified: trunk/blender/source/blender/blenkernel/intern/idprop.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/idprop.c	2013-10-16 05:24:55 UTC (rev 60796)
+++ trunk/blender/source/blender/blenkernel/intern/idprop.c	2013-10-16 05:29:28 UTC (rev 60797)
@@ -641,7 +641,7 @@
  * IDP_FreeProperty(prop); //free all subdata
  * MEM_freeN(prop); //free property struct itself
  */
-void IDP_RemFromGroup(IDProperty *group, IDProperty *prop)
+void IDP_RemoveFromGroup(IDProperty *group, IDProperty *prop)
 {
 	BLI_assert(group->type == IDP_GROUP);
 
@@ -649,6 +649,16 @@
 	BLI_remlink(&group->data.group, prop);
 }
 
+/**
+ * Removes the property from the group and frees it.
+ */
+void IDP_FreeFromGroup(IDProperty *group, IDProperty *prop)
+{
+	IDP_RemoveFromGroup(group, prop);
+	IDP_FreeProperty(prop);
+	MEM_freeN(prop);
+}
+
 IDProperty *IDP_GetPropertyFromGroup(IDProperty *prop, const char *name)
 {
 	BLI_assert(prop->type == IDP_GROUP);

Modified: trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c	2013-10-16 05:24:55 UTC (rev 60796)
+++ trunk/blender/source/blender/blenkernel/intern/writeffmpeg.c	2013-10-16 05:29:28 UTC (rev 60797)
@@ -1254,9 +1254,7 @@
 
 	group = IDP_GetPropertyFromGroup(rd->ffcodecdata.properties, type);
 	if (group && prop) {
-		IDP_RemFromGroup(group, prop);
-		IDP_FreeProperty(prop);
-		MEM_freeN(prop);
+		IDP_FreeFromGroup(group, prop);
 	}
 }
 

Modified: trunk/blender/source/blender/makesrna/intern/rna_access.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_access.c	2013-10-16 05:24:55 UTC (rev 60796)
+++ trunk/blender/source/blender/makesrna/intern/rna_access.c	2013-10-16 05:29:28 UTC (rev 60797)
@@ -290,9 +290,7 @@
 	if (group) {
 		IDProperty *idprop = IDP_GetPropertyFromGroup(group, name);
 		if (idprop) {
-			IDP_RemFromGroup(group, idprop);
-			IDP_FreeProperty(idprop);
-			MEM_freeN(idprop);
+			IDP_FreeFromGroup(group, idprop);
 		}
 	}
 }
@@ -423,9 +421,7 @@
 			if (idprop && !rna_idproperty_verify_valid(ptr, *prop, idprop)) {
 				IDProperty *group = RNA_struct_idprops(ptr, 0);
 
-				IDP_RemFromGroup(group, idprop);
-				IDP_FreeProperty(idprop);
-				MEM_freeN(idprop);
+				IDP_FreeFromGroup(group, idprop);
 				return NULL;
 			}
 
@@ -596,9 +592,7 @@
 	if (group) {
 		IDProperty *idp = IDP_GetPropertyFromGroup(group, identifier);
 		if (idp) {
-			IDP_RemFromGroup(group, idp);
-			IDP_FreeProperty(idp);
-			MEM_freeN(idp);
+			IDP_FreeFromGroup(group, idp);
 
 			return true;
 		}
@@ -2771,9 +2765,7 @@
 		group = RNA_struct_idprops(ptr, 0);
 		
 		if (group) {
-			IDP_RemFromGroup(group, idprop);
-			IDP_FreeProperty(idprop);
-			MEM_freeN(idprop);
+			IDP_FreeFromGroup(group, idprop);
 		}
 	}
 	else

Modified: trunk/blender/source/blender/python/generic/idprop_py_api.c
===================================================================
--- trunk/blender/source/blender/python/generic/idprop_py_api.c	2013-10-16 05:24:55 UTC (rev 60796)
+++ trunk/blender/source/blender/python/generic/idprop_py_api.c	2013-10-16 05:29:28 UTC (rev 60797)
@@ -496,9 +496,7 @@
 	if (val == NULL) { /* del idprop[key] */
 		IDProperty *pkey = IDP_GetPropertyFromGroup(prop, _PyUnicode_AsString(key));
 		if (pkey) {
-			IDP_RemFromGroup(prop, pkey);
-			IDP_FreeProperty(pkey);
-			MEM_freeN(pkey);
+			IDP_FreeFromGroup(prop, pkey);
 			return 0;
 		}
 		else {
@@ -670,7 +668,7 @@
 			return NULL;
 		}
 
-		IDP_RemFromGroup(self->prop, idprop);
+		IDP_RemoveFromGroup(self->prop, idprop);
 		return pyform;
 	}
 




More information about the Bf-blender-cvs mailing list