Correct use-after-free in recent commit

This commit is contained in:
Campbell Barton 2014-07-01 04:09:27 +10:00
parent ed871df836
commit 00e98bf3ec
1 changed files with 5 additions and 10 deletions

View File

@ -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;
}