Commit c7d9960a authored by Fiona Glaser's avatar Fiona Glaser

Resolve possible crash in bime, improve the fix in r985

parent fab9d57a
......@@ -854,7 +854,7 @@ int x264_me_refine_bidir( x264_t *h, x264_me_t *m0, x264_me_t *m1, int i_weight
int bcost = COST_MAX;
int pass = 0;
/* each byte of visited represents 8 possible m1y positions, so a 4D array isn't needed */
uint8_t visited[8][8][8];
DECLARE_ALIGNED_16( uint8_t visited[8][8][8] );
h->mc.memzero_aligned( visited, sizeof(visited) );
BIME_CACHE( 0, 0 );
......
......@@ -73,10 +73,13 @@ static int x264_slicetype_mb_cost( x264_t *h, x264_mb_analysis_t *a,
h->mb.mv_max_fpel[0] = 8*( h->sps->i_mb_width - h->mb.i_mb_x - 1 ) + 4;
h->mb.mv_min_spel[0] = 4*( h->mb.mv_min_fpel[0] - 8 );
h->mb.mv_max_spel[0] = 4*( h->mb.mv_max_fpel[0] + 8 );
h->mb.mv_min_fpel[1] = -8*h->mb.i_mb_y - 4;
h->mb.mv_max_fpel[1] = 8*( h->sps->i_mb_height - h->mb.i_mb_y - 1 ) + 4;
h->mb.mv_min_spel[1] = 4*( h->mb.mv_min_fpel[1] - 8 );
h->mb.mv_max_spel[1] = 4*( h->mb.mv_max_fpel[1] + 8 );
if( h->mb.i_mb_x >= h->sps->i_mb_width - 2 )
{
h->mb.mv_min_fpel[1] = -8*h->mb.i_mb_y - 4;
h->mb.mv_max_fpel[1] = 8*( h->sps->i_mb_height - h->mb.i_mb_y - 1 ) + 4;
h->mb.mv_min_spel[1] = 4*( h->mb.mv_min_fpel[1] - 8 );
h->mb.mv_max_spel[1] = 4*( h->mb.mv_max_fpel[1] + 8 );
}
#define LOAD_HPELS_LUMA(dst, src) \
{ \
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment