diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-10-03 16:56:33 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-10-03 16:56:33 +0400 |
commit | 758e34b45d3fd3470e847b972897e6aff50954dd (patch) | |
tree | 1019cf7898c9fbebac160c72aa5a875c58e08836 /source | |
parent | 7fec67ab40cac18aaa44420216603ddc2b623caa (diff) |
- use BLI_findstring rather then while loop for listbase lookups
- remove BLI_assert I recently added to RNA_property_pointer_type since its intentionally called with no type check.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_image.c | 16 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_access.c | 4 |
2 files changed, 6 insertions, 14 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_image.c b/source/blender/editors/sculpt_paint/paint_image.c index 43969f3c19e..d556ff9797f 100644 --- a/source/blender/editors/sculpt_paint/paint_image.c +++ b/source/blender/editors/sculpt_paint/paint_image.c @@ -427,11 +427,11 @@ static void image_undo_restore(bContext *C, ListBase *lb) for(tile=lb->first; tile; tile=tile->next) { /* find image based on name, pointer becomes invalid with global undo */ - if(ima && strcmp(tile->idname, ima->id.name)==0); + if(ima && strcmp(tile->idname, ima->id.name)==0) { + /* ima is valid */ + } else { - for(ima=bmain->image.first; ima; ima=ima->id.next) - if(strcmp(tile->idname, ima->id.name)==0) - break; + ima= BLI_findstring(&bmain->image, tile->idname, offsetof(ID, name)); } ibuf= BKE_image_get_ibuf(ima, NULL); @@ -442,13 +442,7 @@ static void image_undo_restore(bContext *C, ListBase *lb) full image user (which isn't so obvious, btw) try to find ImBuf with matched file name in list of already loaded images */ - ibuf= ima->ibufs.first; - while(ibuf) { - if(strcmp(tile->ibufname, ibuf->name)==0) - break; - - ibuf= ibuf->next; - } + ibuf= BLI_findstring(&ima->ibufs, tile->ibufname, offsetof(ImBuf, name)); } if (!ima || !ibuf || !(ibuf->rect || ibuf->rect_float)) diff --git a/source/blender/makesrna/intern/rna_access.c b/source/blender/makesrna/intern/rna_access.c index 24e1aa078cf..8047b2df226 100644 --- a/source/blender/makesrna/intern/rna_access.c +++ b/source/blender/makesrna/intern/rna_access.c @@ -1095,9 +1095,7 @@ StructRNA *RNA_property_pointer_type(PointerRNA *ptr, PropertyRNA *prop) if(cprop->item_type) return cprop->item_type; } - else { - BLI_assert(0); - } + /* ignore other types, RNA_struct_find_nested calls with unchecked props */ return &RNA_UnknownType; } |