mirror of https://git.ffmpeg.org/ffmpeg.git
Fix a possible crash on 64 bit systems when the lumSrcPtr or chrSrcPtr
does not fit in 32 bits. The SWS_ACCURATE_RND is still broken though. Originally committed as revision 22401 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
This commit is contained in:
parent
3922c59fc4
commit
9340a99588
|
@ -3169,6 +3169,7 @@ i--;
|
||||||
for(i=0; i<vLumFilterSize; i++)
|
for(i=0; i<vLumFilterSize; i++)
|
||||||
{
|
{
|
||||||
lumMmxFilter[4*i+0]= (int32_t)lumSrcPtr[i];
|
lumMmxFilter[4*i+0]= (int32_t)lumSrcPtr[i];
|
||||||
|
lumMmxFilter[4*i+1]= (uint64_t)lumSrcPtr[i] >> 32;
|
||||||
lumMmxFilter[4*i+2]=
|
lumMmxFilter[4*i+2]=
|
||||||
lumMmxFilter[4*i+3]=
|
lumMmxFilter[4*i+3]=
|
||||||
((uint16_t)vLumFilter[dstY*vLumFilterSize + i])*0x10001;
|
((uint16_t)vLumFilter[dstY*vLumFilterSize + i])*0x10001;
|
||||||
|
@ -3176,6 +3177,7 @@ i--;
|
||||||
for(i=0; i<vChrFilterSize; i++)
|
for(i=0; i<vChrFilterSize; i++)
|
||||||
{
|
{
|
||||||
chrMmxFilter[4*i+0]= (int32_t)chrSrcPtr[i];
|
chrMmxFilter[4*i+0]= (int32_t)chrSrcPtr[i];
|
||||||
|
chrMmxFilter[4*i+1]= (uint64_t)chrSrcPtr[i] >> 32;
|
||||||
chrMmxFilter[4*i+2]=
|
chrMmxFilter[4*i+2]=
|
||||||
chrMmxFilter[4*i+3]=
|
chrMmxFilter[4*i+3]=
|
||||||
((uint16_t)vChrFilter[chrDstY*vChrFilterSize + i])*0x10001;
|
((uint16_t)vChrFilter[chrDstY*vChrFilterSize + i])*0x10001;
|
||||||
|
|
Loading…
Reference in New Issue