mirror of
https://github.com/mpv-player/mpv
synced 2025-01-15 19:42:53 +00:00
This patch fixes a segfault for native cvid decoder in bgr32 and bgr24 modes.
Roberto Togni <rtogni@bresciaonline.it> git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@7410 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
eafdad4b73
commit
a3d81b74f9
@ -352,7 +352,7 @@ int uvr, uvg, uvb;
|
||||
/* ------------------------------------------------------------------------ */
|
||||
inline void cvid_v1_32(mp_image_t *mpi, unsigned int x, unsigned int y, cvid_codebook *cb)
|
||||
{
|
||||
int stride = mpi->stride[0];
|
||||
int stride = mpi->stride[0]/4;
|
||||
unsigned long *vptr = (unsigned long *)mpi->planes[0];
|
||||
unsigned long rgb;
|
||||
|
||||
@ -378,7 +378,7 @@ unsigned long rgb;
|
||||
inline void cvid_v4_32(mp_image_t *mpi, unsigned int x, unsigned int y, cvid_codebook *cb0,
|
||||
cvid_codebook *cb1, cvid_codebook *cb2, cvid_codebook *cb3)
|
||||
{
|
||||
int stride = mpi->stride[0];
|
||||
int stride = mpi->stride[0]/4;
|
||||
unsigned long *vptr = (unsigned long *)mpi->planes[0];
|
||||
|
||||
if(y+3>=(unsigned int)mpi->height) return; // avoid sig11
|
||||
@ -450,8 +450,8 @@ int uvr, uvg, uvb;
|
||||
inline void cvid_v1_24(mp_image_t *mpi, unsigned int x, unsigned int y, cvid_codebook *cb)
|
||||
{
|
||||
unsigned char r, g, b;
|
||||
int stride = (mpi->stride[0]-4)*3;
|
||||
unsigned char *vptr = mpi->planes[0] + (y * mpi->stride[0] + x) * 3;
|
||||
int stride = (mpi->stride[0])-4*3;
|
||||
unsigned char *vptr = mpi->planes[0] + (y * mpi->stride[0]) + x * 3;
|
||||
|
||||
if(y+3>=(unsigned int)mpi->height) return; // avoid sig11
|
||||
|
||||
@ -481,8 +481,8 @@ unsigned char *vptr = mpi->planes[0] + (y * mpi->stride[0] + x) * 3;
|
||||
inline void cvid_v4_24(mp_image_t *mpi, unsigned int x, unsigned int y, cvid_codebook *cb0,
|
||||
cvid_codebook *cb1, cvid_codebook *cb2, cvid_codebook *cb3)
|
||||
{
|
||||
int stride = (mpi->stride[0]-4)*3;
|
||||
unsigned char *vptr = mpi->planes[0] + (y * mpi->stride[0] + x) * 3;
|
||||
int stride = (mpi->stride[0])-4*3;
|
||||
unsigned char *vptr = mpi->planes[0] + (y * mpi->stride[0]) + x * 3;
|
||||
|
||||
if(y+3>=(unsigned int)mpi->height) return; // avoid sig11
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user