Revision: 32495
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32495
Author:   jhk
Date:     2010-10-15 12:25:43 +0200 (Fri, 15 Oct 2010)

Log Message:
-----------
Fix for [#23314] Comp node renaming breaks animation
* Old name was already overwritten before the update function, so changed the 
update function to a "set" function.

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

Modified: trunk/blender/source/blender/makesrna/intern/rna_nodetree.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_nodetree.c 2010-10-15 
09:32:40 UTC (rev 32494)
+++ trunk/blender/source/blender/makesrna/intern/rna_nodetree.c 2010-10-15 
10:25:43 UTC (rev 32495)
@@ -180,7 +180,7 @@
        node_update(bmain, scene, ntree, node);
 }
 
-static void rna_Node_update_name(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_Node_name_set(PointerRNA *ptr, const char *value)
 {
        bNodeTree *ntree= (bNodeTree*)ptr->id.data;
        bNode *node= (bNode*)ptr->data;
@@ -188,14 +188,14 @@
        
        /* make a copy of the old name first */
        BLI_strncpy(oldname, node->name, sizeof(node->name));
+       /* set new name */
+       BLI_strncpy(node->name, value, sizeof(node->name));
        
        nodeUniqueName(ntree, node);
        node->flag |= NODE_CUSTOM_NAME;
        
        /* fix all the animation data which may link to this */
        BKE_all_animdata_fix_paths_rename("nodes", oldname, node->name);
-       
-       node_update(bmain, scene, ntree, node);
 }
 
 /* this should be done at display time! if no custom names are set */
@@ -2263,7 +2263,8 @@
        prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE);
        RNA_def_property_ui_text(prop, "Name", "Node name");
        RNA_def_struct_name_property(srna, prop);
-       RNA_def_property_update(prop, NC_NODE|NA_EDITED, 
"rna_Node_update_name");
+       RNA_def_property_string_funcs(prop, NULL, NULL, "rna_Node_name_set");
+       RNA_def_property_update(prop, NC_NODE|NA_EDITED, "rna_Node_update");
        
        prop = RNA_def_property(srna, "inputs", PROP_COLLECTION, PROP_NONE);
        RNA_def_property_collection_sdna(prop, NULL, "inputs", NULL);


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to