зеркало из https://github.com/mozilla/pjs.git
24 строки
1.0 KiB
Diff
24 строки
1.0 KiB
Diff
diff --git a/media/libtheora/lib/decode.c b/media/libtheora/lib/decode.c
|
|
--- a/media/libtheora/lib/decode.c
|
|
+++ b/media/libtheora/lib/decode.c
|
|
@@ -2072,18 +2072,17 @@ static void oc_dec_init_dummy_frame(th_d
|
|
sizeof(_dec->pp_frame_buf[0])*3);
|
|
info=&_dec->state.info;
|
|
yhstride=abs(_dec->state.ref_ystride[0]);
|
|
yheight=info->frame_height+2*OC_UMV_PADDING;
|
|
chstride=abs(_dec->state.ref_ystride[1]);
|
|
cheight=yheight>>!(info->pixel_fmt&2);
|
|
yplane_sz=yhstride*(size_t)yheight+16;
|
|
cplane_sz=chstride*(size_t)cheight;
|
|
- yoffset=_dec->state.ref_ystride[0]*(yheight-1)-
|
|
- (OC_UMV_PADDING+OC_UMV_PADDING*(ptrdiff_t)yhstride);
|
|
+ yoffset=yhstride*(ptrdiff_t)(yheight-OC_UMV_PADDING-1)+OC_UMV_PADDING;
|
|
memset(_dec->state.ref_frame_data[0]-yoffset,0x80,yplane_sz+2*cplane_sz);
|
|
}
|
|
|
|
int th_decode_packetin(th_dec_ctx *_dec,const ogg_packet *_op,
|
|
ogg_int64_t *_granpos){
|
|
int ret;
|
|
if(_dec==NULL||_op==NULL)return TH_EFAULT;
|
|
/*A completely empty packet indicates a dropped frame and is treated exactly
|