Commit: 00e98bf3ec8d47bf19f658969a1f764bf77d5768
Author: Campbell Barton
Date:   Tue Jul 1 04:09:27 2014 +1000
https://developer.blender.org/rB00e98bf3ec8d47bf19f658969a1f764bf77d5768

Correct use-after-free in recent commit

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

M       source/blender/editors/space_view3d/view3d_edit.c

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

diff --git a/source/blender/editors/space_view3d/view3d_edit.c 
b/source/blender/editors/space_view3d/view3d_edit.c
index f49a738..762288a 100644
--- a/source/blender/editors/space_view3d/view3d_edit.c
+++ b/source/blender/editors/space_view3d/view3d_edit.c
@@ -4263,20 +4263,15 @@ static int background_image_remove_exec(bContext *C, 
wmOperator *op)
        BGpic *bgpic_rem = BLI_findlink(&v3d->bgpicbase, index);
 
        if (bgpic_rem) {
-               ED_view3D_background_image_remove(v3d, bgpic_rem);
-
                if (bgpic_rem->source == V3D_BGPIC_IMAGE) {
-                       Image *ima = bgpic_rem->ima;
-                       if (ima) {
-                               id_us_min(&ima->id);
-                       }
+                       id_us_min((ID *)bgpic_rem->ima);
                }
                else if (bgpic_rem->source == V3D_BGPIC_MOVIE) {
-                       MovieClip *clip = bgpic_rem->clip;
-                       if (clip) {
-                               id_us_min(&clip->id);
-                       }
+                       id_us_min((ID *)bgpic_rem->clip);
                }
+
+               ED_view3D_background_image_remove(v3d, bgpic_rem);
+
                WM_event_add_notifier(C, NC_SPACE | ND_SPACE_VIEW3D, v3d);
                return OPERATOR_FINISHED;
        }

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

Reply via email to