shithub: dav1d

Download patch

ref: 690ed6881305c9ba403b5d62f3c40698d15bfe99
parent: 74f574eab43f36bd02df4319c65ae8b2a332100d
author: Ronald S. Bultje <rsbultje@gmail.com>
date: Mon Oct 22 17:20:58 EDT 2018

Clamp bottom end of vertical tile length

Fixes #69.

--- a/src/decode.c
+++ b/src/decode.c
@@ -2652,8 +2652,10 @@
             // and post-filtering, so that the full process runs in-line, so
             // that frame threading is still possible
             for (int tile_row = 0; tile_row < f->frame_hdr.tiling.rows; tile_row++) {
+                const int sbh_end =
+                    imin(f->frame_hdr.tiling.row_start_sb[tile_row + 1], f->sbh);
                 for (int sby = f->frame_hdr.tiling.row_start_sb[tile_row];
-                     sby < f->frame_hdr.tiling.row_start_sb[tile_row + 1]; sby++)
+                     sby < sbh_end; sby++)
                 {
                     t->by = sby << (4 + f->seq_hdr.sb128);
                     for (int tile_col = 0; tile_col < f->frame_hdr.tiling.cols; tile_col++) {