[Bf-blender-cvs] [73b4cb5c894] blender2.8: Fix some issues in new RNA diff code.

Bastien Montagne noreply at git.blender.org
Thu Feb 1 14:12:35 CET 2018


Commit: 73b4cb5c8941495b7956912a6d1f8f5ee4734175
Author: Bastien Montagne
Date:   Thu Feb 1 14:07:51 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB73b4cb5c8941495b7956912a6d1f8f5ee4734175

Fix some issues in new RNA diff code.

===================================================================

M	source/blender/makesrna/intern/rna_rna.c

===================================================================

diff --git a/source/blender/makesrna/intern/rna_rna.c b/source/blender/makesrna/intern/rna_rna.c
index 38149734bc2..8cf9bc7d39c 100644
--- a/source/blender/makesrna/intern/rna_rna.c
+++ b/source/blender/makesrna/intern/rna_rna.c
@@ -1444,6 +1444,12 @@ int rna_property_override_diff_default(PointerRNA *ptr_a, PointerRNA *ptr_b,
 					equals = false;
 					continue;
 				}
+				else if (iter_a.ptr.type == NULL) {
+					/* NULL RNA pointer... */
+					BLI_assert(iter_a.ptr.data == NULL);
+					BLI_assert(iter_b.ptr.data == NULL);
+					continue;
+				}
 
 				PropertyRNA *propname = RNA_struct_name_property(iter_a.ptr.type);
 				char propname_buff_a[256], propname_buff_b[256];
@@ -1475,10 +1481,10 @@ int rna_property_override_diff_default(PointerRNA *ptr_a, PointerRNA *ptr_b,
 				}
 
 				if (propname_a != propname_buff_a) {
-					MEM_freeN(propname_a);
+					MEM_SAFE_FREE(propname_a);
 				}
 				if (propname_b != propname_buff_b) {
-					MEM_freeN(propname_b);
+					MEM_SAFE_FREE(propname_b);
 				}
 				MEM_SAFE_FREE(extended_rna_path);



More information about the Bf-blender-cvs mailing list