diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-10-12 22:11:54 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-10-12 22:11:54 +0400 |
commit | 3e79a0a5e0cd1cc080ffae17528914d812861f28 (patch) | |
tree | b5e3779f65fb4cbd62d15e567161cafefa798e0d /source/blender/editors/interface/interface_eyedropper.c | |
parent | 0fe221c95165603d3d9c36fa8b51ca8713c82315 (diff) |
fix for possible eyedropper NULL pointer use.
Diffstat (limited to 'source/blender/editors/interface/interface_eyedropper.c')
-rw-r--r-- | source/blender/editors/interface/interface_eyedropper.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/source/blender/editors/interface/interface_eyedropper.c b/source/blender/editors/interface/interface_eyedropper.c index 56dd18565dc..783a777a2fe 100644 --- a/source/blender/editors/interface/interface_eyedropper.c +++ b/source/blender/editors/interface/interface_eyedropper.c @@ -116,9 +116,10 @@ static void eyedropper_exit(bContext *C, wmOperator *op) { WM_cursor_modal_restore(CTX_wm_window(C)); - if (op->customdata) + if (op->customdata) { MEM_freeN(op->customdata); - op->customdata = NULL; + op->customdata = NULL; + } } static int eyedropper_cancel(bContext *C, wmOperator *op) @@ -433,15 +434,17 @@ static int datadropper_init(bContext *C, wmOperator *op) static void datadropper_exit(bContext *C, wmOperator *op) { - DataDropper *ddr = (DataDropper *)op->customdata; - WM_cursor_modal_restore(CTX_wm_window(C)); - ED_region_draw_cb_exit(ddr->art, ddr->draw_handle_pixel); + if (op->customdata) { + DataDropper *ddr = (DataDropper *)op->customdata; + + ED_region_draw_cb_exit(ddr->art, ddr->draw_handle_pixel); - if (op->customdata) MEM_freeN(op->customdata); - op->customdata = NULL; + + op->customdata = NULL; + } } static int datadropper_cancel(bContext *C, wmOperator *op) |