Commit: bdda3152607784ce59ac537264d2efc8f44363fa
Author: Bastien Montagne
Date:   Sun Jan 25 14:59:04 2015 +0100
Branches: asset-experiments
https://developer.blender.org/rBbdda3152607784ce59ac537264d2efc8f44363fa

Fix crasher (Looks like PointerRNA->type can be NULL...).

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

M       source/blender/editors/interface/interface_templates.c

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

diff --git a/source/blender/editors/interface/interface_templates.c 
b/source/blender/editors/interface/interface_templates.c
index 6316ec6..5a4a6bc 100644
--- a/source/blender/editors/interface/interface_templates.c
+++ b/source/blender/editors/interface/interface_templates.c
@@ -2838,20 +2838,21 @@ static void uilist_resize_update_cb(bContext 
*UNUSED(C), void *arg1, void *UNUSE
 
 static const char *uilist_generate_advanced_tooltip(char *tooltip_buff, size_t 
tooltip_len, PointerRNA *itemptr)
 {
-       PropertyRNA *prop = RNA_struct_find_property(itemptr, 
"uilist_dynamic_tooltip");
+       if (itemptr && itemptr->data) {
+               PropertyRNA *prop = RNA_struct_find_property(itemptr, 
"uilist_dynamic_tooltip");
 
-       if (prop && (RNA_property_type(prop) == PROP_STRING)) {
-               char dyn_tooltip_buff[UILIST_TOOLTIP_LEN];
-               char *dyn_tooltip = RNA_property_string_get_alloc(itemptr, 
prop, dyn_tooltip_buff, sizeof(dyn_tooltip_buff), NULL);
+               if (prop && (RNA_property_type(prop) == PROP_STRING)) {
+                       char dyn_tooltip_buff[UILIST_TOOLTIP_LEN];
+                       char *dyn_tooltip = 
RNA_property_string_get_alloc(itemptr, prop, dyn_tooltip_buff, 
sizeof(dyn_tooltip_buff), NULL);
 
-               BLI_snprintf(tooltip_buff, tooltip_len, "%s - %s", 
TIP_(UILIST_RENAME_TOOLTIP), dyn_tooltip);
+                       BLI_snprintf(tooltip_buff, tooltip_len, "%s - %s", 
TIP_(UILIST_RENAME_TOOLTIP), dyn_tooltip);
 
-               if (dyn_tooltip != dyn_tooltip_buff) {
-                       MEM_freeN(dyn_tooltip);
-               }
-
-               return tooltip_buff;
+                       if (dyn_tooltip != dyn_tooltip_buff) {
+                               MEM_freeN(dyn_tooltip);
+                       }
 
+                       return tooltip_buff;
+               }
        }
 
        return TIP_(UILIST_RENAME_TOOLTIP);

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

Reply via email to