mirror of
https://github.com/godotengine/godot.git
synced 2024-11-25 05:33:11 +00:00
Checking for half_image_size[ x & y ] to be non-negative.
This make sure that (1x1) , (1 x X) and (X , 1) pixel images using sub-sampling will get correct half_image_size i.e NON-NEGATIVE. fix : https://github.com/godotengine/godot/issues/42363
This commit is contained in:
parent
9397a5a272
commit
ec6a4c92fe
8
thirdparty/jpeg-compressor/jpgd.cpp
vendored
8
thirdparty/jpeg-compressor/jpgd.cpp
vendored
@ -1669,7 +1669,7 @@ namespace jpgd {
|
|||||||
int row = m_max_mcu_y_size - m_mcu_lines_left;
|
int row = m_max_mcu_y_size - m_mcu_lines_left;
|
||||||
uint8* d0 = m_pScan_line_0;
|
uint8* d0 = m_pScan_line_0;
|
||||||
|
|
||||||
const int half_image_x_size = (m_image_x_size >> 1) - 1;
|
const int half_image_x_size = (m_image_x_size == 1) ? 0 : (m_image_x_size >> 1) - 1;
|
||||||
const int row_x8 = row * 8;
|
const int row_x8 = row * 8;
|
||||||
|
|
||||||
for (int x = 0; x < m_image_x_size; x++)
|
for (int x = 0; x < m_image_x_size; x++)
|
||||||
@ -1762,7 +1762,7 @@ namespace jpgd {
|
|||||||
int y = m_image_y_size - m_total_lines_left;
|
int y = m_image_y_size - m_total_lines_left;
|
||||||
int row = y & 15;
|
int row = y & 15;
|
||||||
|
|
||||||
const int half_image_y_size = (m_image_y_size >> 1) - 1;
|
const int half_image_y_size = (m_image_y_size == 1) ? 0 : (m_image_y_size >> 1) - 1;
|
||||||
|
|
||||||
uint8* d0 = m_pScan_line_0;
|
uint8* d0 = m_pScan_line_0;
|
||||||
|
|
||||||
@ -1891,7 +1891,7 @@ namespace jpgd {
|
|||||||
int y = m_image_y_size - m_total_lines_left;
|
int y = m_image_y_size - m_total_lines_left;
|
||||||
int row = y & 15;
|
int row = y & 15;
|
||||||
|
|
||||||
const int half_image_y_size = (m_image_y_size >> 1) - 1;
|
const int half_image_y_size = (m_image_y_size == 1) ? 0 : (m_image_y_size >> 1) - 1;
|
||||||
|
|
||||||
uint8* d0 = m_pScan_line_0;
|
uint8* d0 = m_pScan_line_0;
|
||||||
|
|
||||||
@ -1915,7 +1915,7 @@ namespace jpgd {
|
|||||||
const int y0_base = (c_y0 & 7) * 8 + 256;
|
const int y0_base = (c_y0 & 7) * 8 + 256;
|
||||||
const int y1_base = (c_y1 & 7) * 8 + 256;
|
const int y1_base = (c_y1 & 7) * 8 + 256;
|
||||||
|
|
||||||
const int half_image_x_size = (m_image_x_size >> 1) - 1;
|
const int half_image_x_size = (m_image_x_size == 1) ? 0 : (m_image_x_size >> 1) - 1;
|
||||||
|
|
||||||
static const uint8_t s_muls[2][2][4] =
|
static const uint8_t s_muls[2][2][4] =
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user