Skip to content

Commit

Permalink
Check if the line pointer goes away from the image buffer's EOF in th…
Browse files Browse the repository at this point in the history
…e BMP importer
  • Loading branch information
gongpha committed Mar 2, 2021
1 parent 09b5d68 commit ac5d7ab
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions modules/bmp/image_loader_bmp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -91,11 +91,13 @@ Error ImageLoaderBMP::convert_to_image(Ref<Image> p_image,
// the data width in case of 8/4/1 bit images
const uint32_t w = bits_per_pixel >= 24 ? width : width_bytes;
const uint8_t *line = p_buffer + (line_width * (height - 1));
const uint8_t *end_buffer = p_buffer + p_header.bmp_file_header.bmp_file_size - p_header.bmp_file_header.bmp_file_offset;

for (uint64_t i = 0; i < height; i++) {
const uint8_t *line_ptr = line;

for (unsigned int j = 0; j < w; j++) {
ERR_FAIL_COND_V(line_ptr >= end_buffer, ERR_FILE_CORRUPT);
switch (bits_per_pixel) {
case 1: {
uint8_t color_index = *line_ptr;
Expand Down

0 comments on commit ac5d7ab

Please sign in to comment.