[Bf-blender-cvs] [f622691] master: Fix access violation when painting with tiled textured brushes + airbrush + small brush size.

Antony Riakiotakis noreply at git.blender.org
Fri May 9 22:31:45 CEST 2014


Commit: f622691691547bb364fe6a560124583030d55c11
Author: Antony Riakiotakis
Date:   Fri May 9 23:29:57 2014 +0300
https://developer.blender.org/rBf622691691547bb364fe6a560124583030d55c11

Fix access violation when painting with tiled textured brushes +
airbrush + small brush size.

Fast textured strokes meant that sometimes the update width (calculated
from stroke distance) would be greater than the new ibuf width. This
meant out of bounds access for the new ibuf.

It's totally strange that I couldn't reproduce this issue on older
versions since the logic here has not really changed much between
versions.

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

M	source/blender/editors/sculpt_paint/paint_image_2d.c

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

diff --git a/source/blender/editors/sculpt_paint/paint_image_2d.c b/source/blender/editors/sculpt_paint/paint_image_2d.c
index 16dacae..667b487 100644
--- a/source/blender/editors/sculpt_paint/paint_image_2d.c
+++ b/source/blender/editors/sculpt_paint/paint_image_2d.c
@@ -491,8 +491,8 @@ static void brush_painter_imbuf_partial_update(BrushPainter *painter, const floa
 		w = h = 0;
 	}
 	
-	x1 = destx;
-	y1 = desty;
+	x1 = min_ii(destx, ibuf->x);
+	y1 = min_ii(desty, ibuf->y);
 	x2 = min_ii(destx + w, ibuf->x);
 	y2 = min_ii(desty + h, ibuf->y);




More information about the Bf-blender-cvs mailing list