Don't crash if null image
This commit is contained in:
parent
af7d6cf391
commit
23ec5ba379
@ -24,6 +24,8 @@ GEGLTexture::GEGLTexture(video::IImage* img, const std::string& name)
|
||||
m_driver_type(GE::getDriver()->getDriverType()),
|
||||
m_disable_reload(true)
|
||||
{
|
||||
if (!img)
|
||||
return;
|
||||
glGenTextures(1, &m_texture_name);
|
||||
m_size = m_orig_size = img->getDimension();
|
||||
uint8_t* data = (uint8_t*)img->lock();
|
||||
@ -194,13 +196,13 @@ void GEGLTexture::updateTexture(void* data, video::ECOLOR_FORMAT format, u32 w,
|
||||
}
|
||||
else if (format == video::ECF_A8R8G8B8)
|
||||
{
|
||||
uint8_t* u8_data = (uint8_t*)data;
|
||||
for (unsigned int i = 0; i < w * h; i++)
|
||||
{
|
||||
uint8_t tmp_val = u8_data[i * 4];
|
||||
u8_data[i * 4] = u8_data[i * 4 + 2];
|
||||
u8_data[i * 4 + 2] = tmp_val;
|
||||
}
|
||||
uint8_t* u8_data = (uint8_t*)data;
|
||||
for (unsigned int i = 0; i < w * h; i++)
|
||||
{
|
||||
uint8_t tmp_val = u8_data[i * 4];
|
||||
u8_data[i * 4] = u8_data[i * 4 + 2];
|
||||
u8_data[i * 4 + 2] = tmp_val;
|
||||
}
|
||||
glTexSubImage2D(GL_TEXTURE_2D, 0, x, y, w, h, GL_RGBA,
|
||||
GL_UNSIGNED_BYTE, u8_data);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user