Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2013-01-05 11:30:52 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2013-01-05 11:30:52 +0400
commit93a6872a254f4507d07ffb17919a32e234715ce1 (patch)
treef98c2f2d8ecef10e82a44c6cfbcd427a5f677d4d
parenta3f3c205cd89a687199723294f3fb029c48429b7 (diff)
Fix #33761: Infinite loop in space_image if tile size > image size
-rw-r--r--source/blender/editors/space_image/image_draw.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/editors/space_image/image_draw.c b/source/blender/editors/space_image/image_draw.c
index 79130ccca2f..0534b9f4ffd 100644
--- a/source/blender/editors/space_image/image_draw.c
+++ b/source/blender/editors/space_image/image_draw.c
@@ -587,8 +587,8 @@ static void draw_image_buffer_tiled(SpaceImage *sima, ARegion *ar, Scene *scene,
sima->curtile = ima->xrep * ima->yrep - 1;
/* retrieve part of image buffer */
- dx = ibuf->x / ima->xrep;
- dy = ibuf->y / ima->yrep;
+ dx = max_ii(ibuf->x / ima->xrep, 1);
+ dy = max_ii(ibuf->y / ima->yrep, 1);
sx = (sima->curtile % ima->xrep) * dx;
sy = (sima->curtile / ima->xrep) * dy;
rect = get_part_from_buffer((unsigned int *)display_buffer, ibuf->x, sx, sy, sx + dx, sy + dy);