summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/igt_draw.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/igt_draw.c b/lib/igt_draw.c
index 50bed863..10187d8e 100644
--- a/lib/igt_draw.c
+++ b/lib/igt_draw.c
@@ -375,7 +375,8 @@ static void draw_rect_pwrite_tiled(int fd, struct buf_data *buf,
flush_tmp = true;
}
- if (tmp_used == tmp_size || (flush_tmp && tmp_used > 0)) {
+ if (tmp_used == tmp_size || (flush_tmp && tmp_used > 0) ||
+ tiled_pos + pixel_size >= buf->size) {
gem_write(fd, buf->handle, tmp_start_pos, tmp,
tmp_used * pixel_size);
flush_tmp = false;