[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50710] trunk/blender/source: fix for a strange linking error where set_property() in source/blender/ blenkernel/intern/property. c would get mixed up with an X11 function of the same name.

Campbell Barton ideasman42 at gmail.com
Tue Sep 18 06:35:31 CEST 2012


Revision: 50710
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50710
Author:   campbellbarton
Date:     2012-09-18 04:35:30 +0000 (Tue, 18 Sep 2012)
Log Message:
-----------
fix for a strange linking error where set_property() in source/blender/blenkernel/intern/property.c would get mixed up with an X11 function of the same name. it crashed blender loading on my system.

Give functions in property.c more unique names.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_property.h
    trunk/blender/source/blender/blenkernel/intern/object.c
    trunk/blender/source/blender/blenkernel/intern/property.c
    trunk/blender/source/blender/blenloader/intern/readfile.c
    trunk/blender/source/blender/blenloader/intern/versioning_legacy.c
    trunk/blender/source/blender/editors/object/object_edit.c
    trunk/blender/source/blender/editors/object/object_select.c
    trunk/blender/source/blender/editors/space_view3d/drawmesh.c
    trunk/blender/source/blender/editors/space_view3d/drawobject.c
    trunk/blender/source/blender/makesrna/intern/rna_property.c
    trunk/blender/source/gameengine/Converter/KX_ConvertProperties.cpp

Modified: trunk/blender/source/blender/blenkernel/BKE_property.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_property.h	2012-09-18 03:15:12 UTC (rev 50709)
+++ trunk/blender/source/blender/blenkernel/BKE_property.h	2012-09-18 04:35:30 UTC (rev 50710)
@@ -35,19 +35,18 @@
 struct ListBase;
 struct Object;
 
-void free_property(struct bProperty *prop);
-void free_properties(struct ListBase *lb);
-struct bProperty *copy_property(struct bProperty *prop);
-void copy_properties(struct ListBase *lbn, struct ListBase *lbo);
-void init_property(struct bProperty *prop);
-struct bProperty *new_property(int type);
-void unique_property(struct bProperty *first, struct  bProperty *prop, int force);
-struct bProperty *get_ob_property(struct Object *ob, const char *name);
-void set_ob_property(struct Object *ob, struct bProperty *propc);
-int compare_property(struct bProperty *prop, const char *str);
-void set_property(struct bProperty *prop, const char *str);
-void add_property(struct bProperty *prop, const char *str);
-void set_property_valstr(struct bProperty *prop, char *str);
-void cp_property(struct bProperty *prop1, struct bProperty *prop2);
+void              BKE_bproperty_free(struct bProperty *prop);
+void              BKE_bproperty_free_list(struct ListBase *lb);
+struct bProperty *BKE_bproperty_copy(struct bProperty *prop);
+void              BKE_bproperty_copy_list(struct ListBase *lbn, struct ListBase *lbo);
+void              BKE_bproperty_init(struct bProperty *prop);
+struct bProperty *BKE_bproperty_new(int type);
+void              BKE_bproperty_unique(struct bProperty *first, struct  bProperty *prop, int force);
+struct bProperty *BKE_bproperty_object_get(struct Object *ob, const char *name);
+void              BKE_bproperty_object_set(struct Object *ob, struct bProperty *propc);
+// int               BKE_bproperty_cmp(struct bProperty *prop, const char *str);
+void              BKE_bproperty_set(struct bProperty *prop, const char *str);
+void              BKE_bproperty_add(struct bProperty *prop, const char *str);
+void              BKE_bproperty_set_valstr(struct bProperty *prop, char *str);
 	
 #endif

Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c	2012-09-18 03:15:12 UTC (rev 50709)
+++ trunk/blender/source/blender/blenkernel/intern/object.c	2012-09-18 04:35:30 UTC (rev 50710)
@@ -340,7 +340,7 @@
 		BKE_pose_free(ob->pose);
 	if (ob->mpath)
 		animviz_free_motionpath(ob->mpath);
-	free_properties(&ob->prop);
+	BKE_bproperty_free_list(&ob->prop);
 	BKE_object_free_modifiers(ob);
 	
 	free_sensors(&ob->sensors);
@@ -1147,7 +1147,7 @@
 	}
 
 	obn->prop.first = obn->prop.last = NULL;
-	copy_properties(&obn->prop, &ob->prop);
+	BKE_bproperty_copy_list(&obn->prop, &ob->prop);
 	
 	copy_sensors(&obn->sensors, &ob->sensors);
 	copy_controllers(&obn->controllers, &ob->controllers);

Modified: trunk/blender/source/blender/blenkernel/intern/property.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/property.c	2012-09-18 03:15:12 UTC (rev 50709)
+++ trunk/blender/source/blender/blenkernel/intern/property.c	2012-09-18 04:35:30 UTC (rev 50710)
@@ -27,9 +27,12 @@
 
 /** \file blender/blenkernel/intern/property.c
  *  \ingroup bke
+ *
+ * This module deals with bProperty only,
+ * they are used on blender objects in the game engine
+ * (where they get converted into C++ classes - CValue and subclasses)
  */
 
-
 #include <stdio.h>
 #include <stdlib.h>
 #include <stddef.h>
@@ -45,7 +48,7 @@
 
 #include "BKE_property.h"
 
-void free_property(bProperty *prop)
+void BKE_bproperty_free(bProperty *prop)
 {
 	
 	if (prop->poin && prop->poin != &prop->data) MEM_freeN(prop->poin);
@@ -53,17 +56,17 @@
 	
 }
 
-void free_properties(ListBase *lb)
+void BKE_bproperty_free_list(ListBase *lb)
 {
 	bProperty *prop;
 	
 	while ( (prop = lb->first) ) {
 		BLI_remlink(lb, prop);
-		free_property(prop);
+		BKE_bproperty_free(prop);
 	}
 }
 
-bProperty *copy_property(bProperty *prop)
+bProperty *BKE_bproperty_copy(bProperty *prop)
 {
 	bProperty *propn;
 	
@@ -76,13 +79,13 @@
 	return propn;
 }
 
-void copy_properties(ListBase *lbn, ListBase *lbo)
+void BKE_bproperty_copy_list(ListBase *lbn, ListBase *lbo)
 {
 	bProperty *prop, *propn;
-	free_properties(lbn); /* in case we are copying to an object with props */
+	BKE_bproperty_free_list(lbn); /* in case we are copying to an object with props */
 	prop = lbo->first;
 	while (prop) {
-		propn = copy_property(prop);
+		propn = BKE_bproperty_copy(prop);
 		BLI_addtail(lbn, propn);
 		prop = prop->next;
 	}
@@ -90,7 +93,7 @@
 	
 }
 
-void init_property(bProperty *prop)
+void BKE_bproperty_init(bProperty *prop)
 {
 	/* also use when property changes type */
 	
@@ -113,22 +116,22 @@
 }
 
 
-bProperty *new_property(int type)
+bProperty *BKE_bproperty_new(int type)
 {
 	bProperty *prop;
 
 	prop = MEM_callocN(sizeof(bProperty), "property");
 	prop->type = type;
 
-	init_property(prop);
+	BKE_bproperty_init(prop);
 	
 	strcpy(prop->name, "prop");
 
 	return prop;
 }
 
-/* used by unique_property() only */
-static bProperty *get_property__internal(bProperty *first, bProperty *self, const char *name)
+/* used by BKE_bproperty_unique() only */
+static bProperty *bproperty_get(bProperty *first, bProperty *self, const char *name)
 {
 	bProperty *p;
 	for (p = first; p; p = p->next) {
@@ -137,7 +140,7 @@
 	}
 	return NULL;
 }
-void unique_property(bProperty *first, bProperty *prop, int force)
+void BKE_bproperty_unique(bProperty *first, bProperty *prop, int force)
 {
 	bProperty *p;
 
@@ -151,13 +154,13 @@
 
 	if (force) {
 		/* change other names to make them unique */
-		while ((p = get_property__internal(first, prop, prop->name))) {
-			unique_property(first, p, 0);
+		while ((p = bproperty_get(first, prop, prop->name))) {
+			BKE_bproperty_unique(first, p, 0);
 		}
 	}
 	else {
 		/* change our own name until its unique */
-		if (get_property__internal(first, prop, prop->name)) {
+		if (bproperty_get(first, prop, prop->name)) {
 			/* there is a collision */
 			char new_name[sizeof(prop->name)];
 			char base_name[sizeof(prop->name)];
@@ -175,33 +178,34 @@
 				BLI_snprintf(num, sizeof(num), "%d", i++);
 				BLI_strncpy(new_name, base_name, sizeof(prop->name) - strlen(num));
 				strcat(new_name, num);
-			} while (get_property__internal(first, prop, new_name));
+			} while (bproperty_get(first, prop, new_name));
 
 			BLI_strncpy(prop->name, new_name, sizeof(prop->name));
 		}
 	}
 }
 
-bProperty *get_ob_property(Object *ob, const char *name)
+bProperty *BKE_bproperty_object_get(Object *ob, const char *name)
 {
 	return BLI_findstring(&ob->prop, name, offsetof(bProperty, name));
 }
 
-void set_ob_property(Object *ob, bProperty *propc)
+void BKE_bproperty_object_set(Object *ob, bProperty *propc)
 {
 	bProperty *prop;
-	prop = get_ob_property(ob, propc->name);
+	prop = BKE_bproperty_object_get(ob, propc->name);
 	if (prop) {
-		free_property(prop);
+		BKE_bproperty_free(prop);
 		BLI_remlink(&ob->prop, prop);
 	}
-	BLI_addtail(&ob->prop, copy_property(propc));
+	BLI_addtail(&ob->prop, BKE_bproperty_copy(propc));
 }
 
 /* negative: prop is smaller
  * positive: prop is larger
  */
-int compare_property(bProperty *prop, const char *str)
+#if 0  /* UNUSED */
+int BKE_bproperty_cmp(bProperty *prop, const char *str)
 {
 //	extern int Gdfra;		/* sector.c */
 	float fvalue, ftest;
@@ -237,8 +241,9 @@
 	
 	return 0;
 }
+#endif
 
-void set_property(bProperty *prop, const char *str)
+void BKE_bproperty_set(bProperty *prop, const char *str)
 {
 //	extern int Gdfra;		/* sector.c */
 
@@ -262,7 +267,7 @@
 	
 }
 
-void add_property(bProperty *prop, const char *str)
+void BKE_bproperty_add(bProperty *prop, const char *str)
 {
 //	extern int Gdfra;		/* sector.c */
 
@@ -282,7 +287,7 @@
 }
 
 /* reads value of property, sets it in chars in str */
-void set_property_valstr(bProperty *prop, char *str)
+void BKE_bproperty_set_valstr(bProperty *prop, char *str)
 {
 //	extern int Gdfra;		/* sector.c */
 
@@ -303,11 +308,13 @@
 	}
 }
 
+#if 0   /* UNUSED */
 void cp_property(bProperty *prop1, bProperty *prop2)
 {
 	char str[128];
 
-	set_property_valstr(prop2, str);
+	BKE_bproperty_set_valstr(prop2, str);
 
-	set_property(prop1, str);
+	BKE_bproperty_set(prop1, str);
 }
+#endif

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2012-09-18 03:15:12 UTC (rev 50709)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2012-09-18 04:35:30 UTC (rev 50710)
@@ -133,7 +133,7 @@
 #include "BKE_paint.h"
 #include "BKE_particle.h"
 #include "BKE_pointcache.h"
-#include "BKE_property.h" // for get_ob_property
+#include "BKE_property.h" // for BKE_bproperty_object_get
 #include "BKE_report.h"
 #include "BKE_sca.h" // for init_actuator
 #include "BKE_scene.h"
@@ -7382,7 +7382,7 @@
 			
 			for (ob= main->object.first; ob; ob= ob->id.next) {
 				if (ob->type == OB_FONT) {
-					prop = get_ob_property(ob, "Text");
+					prop = BKE_bproperty_object_get(ob, "Text");
 					if (prop) {
 						BKE_reportf_wrap(fd->reports, RPT_WARNING,
 						                 "Game property name conflict in object: \"%s\".\nText objects reserve the "

Modified: trunk/blender/source/blender/blenloader/intern/versioning_legacy.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/versioning_legacy.c	2012-09-18 03:15:12 UTC (rev 50709)
+++ trunk/blender/source/blender/blenloader/intern/versioning_legacy.c	2012-09-18 04:35:30 UTC (rev 50710)
@@ -92,7 +92,7 @@
 #include "BKE_modifier.h"
 #include "BKE_particle.h"
 #include "BKE_pointcache.h"
-#include "BKE_property.h" // for get_ob_property
+#include "BKE_property.h" // for BKE_bproperty_object_get
 #include "BKE_scene.h"
 #include "BKE_sequencer.h"
 
@@ -945,7 +945,7 @@
 			while (act) {
 				if (act->type == ACT_IPO) {
 					ia = act->data;
-					prop = get_ob_property(ob, ia->name);
+					prop = BKE_bproperty_object_get(ob, ia->name);
 					if (prop) {
 						ia->type = ACT_IPO_FROM_PROP;
 					}

Modified: trunk/blender/source/blender/editors/object/object_edit.c
===================================================================

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list