diff --git a/lib/state.c b/lib/state.c index f4c6240387af9ceb4cabdaaea8f9d70911abd2ac..12be4f61b2f1d82930529f247ccc4da0f996052f 100644 --- a/lib/state.c +++ b/lib/state.c @@ -1053,7 +1053,7 @@ void oc_loop_filter_init_c(signed char _bv[256],int _flimit){ _fragy0: The Y coordinate of the first fragment row to filter. _fragy_end: The Y coordinate of the fragment row to stop filtering at.*/ void oc_state_loop_filter_frag_rows_c(const oc_theora_state *_state, - signed char *_bv,int _refi,int _pli,int _fragy0,int _fragy_end){ + signed char _bvarray[256],int _refi,int _pli,int _fragy0,int _fragy_end){ const oc_fragment_plane *fplane; const oc_fragment *frags; const ptrdiff_t *frag_buf_offs; @@ -1064,7 +1064,7 @@ void oc_state_loop_filter_frag_rows_c(const oc_theora_state *_state, ptrdiff_t fragi0_end; int ystride; int nhfrags; - _bv+=127; + signed char *_bv = &_bvarray[127]; fplane=_state->fplanes+_pli; nhfrags=fplane->nhfrags; fragi_top=fplane->froffset; diff --git a/lib/state.h b/lib/state.h index f176a53ce9842721a35d1db796db9e4de04bfb42..5d5d0c108e8340d5e4b331d5f526f20ea5dc9629 100644 --- a/lib/state.h +++ b/lib/state.h @@ -523,7 +523,7 @@ void oc_idct8x8_c(ogg_int16_t _y[64],ogg_int16_t _x[64],int _last_zzi); void oc_state_frag_recon_c(const oc_theora_state *_state,ptrdiff_t _fragi, int _pli,ogg_int16_t _dct_coeffs[128],int _last_zzi,ogg_uint16_t _dc_quant); void oc_state_loop_filter_frag_rows_c(const oc_theora_state *_state, - signed char _bv[256],int _refi,int _pli,int _fragy0,int _fragy_end); + signed char _bvarray[256],int _refi,int _pli,int _fragy0,int _fragy_end); void oc_restore_fpu_c(void); /*We need a way to call a few encoder functions without introducing a link-time