From: Yaowu Xu Date: Fri, 31 May 2013 18:18:23 +0000 (-0700) Subject: Fix a off-by-one bug X-Git-Tag: v1.3.0~1104^2~81^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0449ee0fececb00d89afbb42505cb7e43ee67db0;p=libvpx Fix a off-by-one bug in the calculation of maximum number of tiles in log2 scale. Change-Id: Id283d6e51a8b926015fd3fc631cdbfb4b8268d4a --- diff --git a/vp9/common/vp9_tile_common.c b/vp9/common/vp9_tile_common.c index ea26289b7..95296ad6f 100644 --- a/vp9/common/vp9_tile_common.c +++ b/vp9/common/vp9_tile_common.c @@ -49,10 +49,15 @@ void vp9_get_tile_n_bits(VP9_COMMON *cm, int *min_log2_n_tiles_ptr, for (max_log2_n_tiles = 0; (sb_cols >> max_log2_n_tiles) >= MIN_TILE_WIDTH_SBS; max_log2_n_tiles++) {} + max_log2_n_tiles--; + if (max_log2_n_tiles < 0) + max_log2_n_tiles = 0; + for (min_log2_n_tiles = 0; (MAX_TILE_WIDTH_SBS << min_log2_n_tiles) < sb_cols; min_log2_n_tiles++) {} + assert(max_log2_n_tiles >= min_log2_n_tiles); *min_log2_n_tiles_ptr = min_log2_n_tiles; *delta_log2_n_tiles = max_log2_n_tiles - min_log2_n_tiles; }