diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-01-25 02:31:37 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-01-25 02:31:37 +0300 |
commit | 032129ef3527424de241f381376a3b94a2247965 (patch) | |
tree | c767ec40502ab920ac823bba936c8b7f3cb8e75b /source/blender/editors | |
parent | ca088a7b126be3e08025b83d6ac6aafa7519985c (diff) | |
parent | 9b32248894d133c6437174e1470dfefa23a10b87 (diff) |
Merge branch 'master' into blender2.8
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_stroke.c | 9 | ||||
-rw-r--r-- | source/blender/editors/space_image/image_ops.c | 2 |
2 files changed, 9 insertions, 2 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_stroke.c b/source/blender/editors/sculpt_paint/paint_stroke.c index 9dd51b289f4..0648bd804e0 100644 --- a/source/blender/editors/sculpt_paint/paint_stroke.c +++ b/source/blender/editors/sculpt_paint/paint_stroke.c @@ -109,6 +109,8 @@ typedef struct PaintStroke { * e.g. in sculpt mode, stroke doesn't start until cursor * passes over the mesh */ bool stroke_started; + /* Set when enough motion was found for rake rotation */ + bool rake_started; /* event that started stroke, for modal() return */ int event_type; /* check if stroke variables have been initialized */ @@ -376,7 +378,12 @@ static bool paint_brush_update(bContext *C, else if (!(brush->flag & BRUSH_CURVE)) { if (!paint_calculate_rake_rotation(ups, brush, mouse_init)) { /* Not enough motion to define an angle. */ - is_dry_run = true; + if(!stroke->rake_started) { + is_dry_run = true; + } + } + else { + stroke->rake_started = true; } } } diff --git a/source/blender/editors/space_image/image_ops.c b/source/blender/editors/space_image/image_ops.c index 2cc5c7f8d68..6c0ab33dd2c 100644 --- a/source/blender/editors/space_image/image_ops.c +++ b/source/blender/editors/space_image/image_ops.c @@ -1858,7 +1858,7 @@ static bool save_image_doit(bContext *C, SpaceImage *sima, wmOperator *op, SaveI scene = CTX_data_scene(C); rr = BKE_image_acquire_renderresult(scene, ima); bool is_mono = rr ? BLI_listbase_count_ex(&rr->views, 2) < 2 : BLI_listbase_count_ex(&ima->views, 2) < 2; - bool is_exr_rr = rr && ELEM(imf->imtype, R_IMF_IMTYPE_OPENEXR, R_IMF_IMTYPE_MULTILAYER); + bool is_exr_rr = rr && ELEM(imf->imtype, R_IMF_IMTYPE_OPENEXR, R_IMF_IMTYPE_MULTILAYER) && RE_HasFloatPixels(rr); /* error handling */ if (!rr) { |