From e2fe0ca8355c12b80dc78d38bd742a7ce3bbdf0a Mon Sep 17 00:00:00 2001 From: kalistratovag Date: Fri, 3 Jul 2015 20:11:58 +0300 Subject: [PATCH] Removing deadcode blocks, redudant variable & initializing all vars in constructor Adding &31 to bit shift in order to silince coverity BAD_SHIFT defect add default_stripes_count const --- modules/videoio/src/cap_mjpeg_encoder.cpp | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/modules/videoio/src/cap_mjpeg_encoder.cpp b/modules/videoio/src/cap_mjpeg_encoder.cpp index 4449b7d..201b284 100644 --- a/modules/videoio/src/cap_mjpeg_encoder.cpp +++ b/modules/videoio/src/cap_mjpeg_encoder.cpp @@ -433,7 +433,6 @@ private: std::vector data; int bits_free; unsigned m_pos; - bool m_is_full; unsigned m_data_len; }; @@ -443,7 +442,7 @@ class mjpeg_buffer_keeper public: mjpeg_buffer_keeper() { - m_last_bit_len = 0; + reset(); } mjpeg_buffer& operator[](int i) @@ -496,7 +495,7 @@ public: } else { - memcpy(&m_output_buffer[current_pos], buffer.get_data(), sizeof(buffer.get_data()[0])*(buffer.get_len() -1 )); + memcpy(&m_output_buffer[current_pos], buffer.get_data(), sizeof(buffer.get_data()[0])*(buffer.get_len() - 1 )); m_data_len += buffer.get_len() - 1; currval = buffer.get_data()[buffer.get_len() - 1]; } @@ -505,27 +504,20 @@ public: { for(unsigned i = 0; i < buffer.get_len() - 1; ++i) { - if( bits <= 0 ) - { - currval |= ((unsigned)buffer.get_data()[i] >> -bits); + currval |= ( (unsigned)buffer.get_data()[i] >> (31 & (-bits)) ); - m_output_buffer[m_data_len++] = currval; + m_output_buffer[m_data_len++] = currval; - currval = (bits < 0) ? (buffer.get_data()[i] << (bits + 32)) : 0; - } - else - { - currval |= (buffer.get_data()[i] << bits); - } + currval = buffer.get_data()[i] << (bits + 32); } - currval |= ((unsigned)buffer.get_data()[buffer.get_len() - 1] >> -bits); + currval |= ( (unsigned)buffer.get_data()[buffer.get_len() - 1] >> (31 & (-bits)) ); - if( (buffer.get_bits_free() == 32 ? 0 : buffer.get_bits_free()) <= -bits) + if( buffer.get_bits_free() <= -bits) { m_output_buffer[m_data_len++] = currval; - currval = (bits < 0) ? (buffer.get_data()[buffer.get_len() - 1] << (bits + 32)) : 0; + currval = buffer.get_data()[buffer.get_len() - 1] << (bits + 32); } } @@ -1534,7 +1526,7 @@ public: { if(height*width > min_pixels_count) { - stripes_count = 4; + stripes_count = default_stripes_count; } } else @@ -1735,8 +1727,11 @@ private: const short (&fdct_qtab)[2][64]; const uchar* cat_table; int stripes_count; + static const int default_stripes_count; }; +const int MjpegEncoder::default_stripes_count = 4; + void MotionJpegWriter::writeFrameData( const uchar* data, int step, int colorspace, int input_channels ) { //double total_cvt = 0, total_dct = 0; -- 2.7.4