rendutil render_load_jpeg: removed unneeded check, deallocate bitmap on error

This commit is contained in:
hap 2016-03-28 01:00:55 +02:00
parent 85bafafdeb
commit 4cd7523ec7

View File

@ -533,8 +533,6 @@ void render_load_jpeg(bitmap_argb32 &bitmap, emu_file &file, const char *dirname
// deallocate previous bitmap // deallocate previous bitmap
bitmap.reset(); bitmap.reset();
bitmap_format format = bitmap.format();
// define file's full name // define file's full name
std::string fname; std::string fname;
@ -584,21 +582,16 @@ void render_load_jpeg(bitmap_argb32 &bitmap, emu_file &file, const char *dirname
if (s == 1) if (s == 1)
for (int i = 0; i < w; ++i) for (int i = 0; i < w; ++i)
if (format == BITMAP_FORMAT_ARGB32) bitmap.pix32(j, i) = rgb_t(0xFF, buffer[0][i], buffer[0][i], buffer[0][i]);
bitmap.pix32(j, i) = rgb_t(0xFF, buffer[0][i], buffer[0][i], buffer[0][i]);
else
bitmap.pix32(j, i) = rgb_t(buffer[0][i], buffer[0][i], buffer[0][i]);
else if (s == 3) else if (s == 3)
for (int i = 0; i < w; ++i) for (int i = 0; i < w; ++i)
if (format == BITMAP_FORMAT_ARGB32) bitmap.pix32(j, i) = rgb_t(0xFF, buffer[0][i * s], buffer[0][i * s + 1], buffer[0][i * s + 2]);
bitmap.pix32(j, i) = rgb_t(0xFF, buffer[0][i * s], buffer[0][i * s + 1], buffer[0][i * s + 2]);
else
bitmap.pix32(j, i) = rgb_t(buffer[0][i * s], buffer[0][i * s + 1], buffer[0][i * s + 2]);
else else
{ {
osd_printf_error("Cannot read JPEG data from %s file.\n", fname.c_str()); osd_printf_error("Cannot read JPEG data from %s file.\n", fname.c_str());
bitmap.reset();
break; break;
} }
} }