Merge pull request #6446 from kevin-coder:bugfix_6445

This commit is contained in:
Maksim Shabunin 2016-05-18 09:40:26 +00:00
commit c3d1f94ee6

View File

@ -190,7 +190,6 @@ bool PxMDecoder::readData( Mat& img )
{
int color = img.channels() > 1;
uchar* data = img.ptr();
int step = (int)img.step;
PaletteEntry palette[256];
bool result = false;
int bit_depth = CV_ELEM_SIZE1(m_type)*8;
@ -229,7 +228,7 @@ bool PxMDecoder::readData( Mat& img )
case 1:
if( !m_binary )
{
for( y = 0; y < m_height; y++, data += step )
for( y = 0; y < m_height; y++, data += img.step )
{
for( x = 0; x < m_width; x++ )
src[x] = ReadNumber( m_strm, 1 ) != 0;
@ -242,7 +241,7 @@ bool PxMDecoder::readData( Mat& img )
}
else
{
for( y = 0; y < m_height; y++, data += step )
for( y = 0; y < m_height; y++, data += img.step )
{
m_strm.getBytes( src, src_pitch );
@ -258,7 +257,7 @@ bool PxMDecoder::readData( Mat& img )
////////////////////////// 8 BPP /////////////////////////
case 8:
case 24:
for( y = 0; y < m_height; y++, data += step )
for( y = 0; y < m_height; y++, data += img.step )
{
if( !m_binary )
{
@ -310,7 +309,7 @@ bool PxMDecoder::readData( Mat& img )
}
}
else
memcpy( data, src, m_width*(bit_depth/8) );
memcpy( data, src, m_width);
}
else
{