diff options
author | Leon Scroggins III <scroggo@google.com> | 2018-03-09 16:23:15 -0500 |
---|---|---|
committer | Leon Scroggins III <scroggo@google.com> | 2018-03-09 16:28:59 -0500 |
commit | bb217acdca1cc0c16b704669dd6f91a1b509c406 (patch) | |
tree | ad1dbaac28851868cadbbdde7bceda97bc771a32 | |
parent | f7fc905cff18c7b883712bbfaffabd5d187bc787 (diff) | |
download | piex-bb217acdca1cc0c16b704669dd6f91a1b509c406.tar.gz |
Fix an uninitialized memory read in PIEXandroid-wear-p-preview-2android-p-preview-5android-p-preview-4android-p-preview-3android-p-preview-2android-o-mr1-iot-release-1.0.2android-o-mr1-iot-release-1.0.1android-o-mr1-iot-release-1.0.0android-o-mr1-iot-preview-8android-n-iot-release-smart-display-r2android-n-iot-release-smart-displayandroid-n-iot-release-polk-at1android-n-iot-release-lg-thinq-wk7o-mr1-iot-preview-8
Author: kjlubic@google.com
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6293
-rw-r--r-- | src/tiff_parser.cc | 13 | ||||
-rw-r--r-- | src/tiff_parser.h | 2 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/tiff_parser.cc b/src/tiff_parser.cc index 6bf3bb4..f36c5ba 100644 --- a/src/tiff_parser.cc +++ b/src/tiff_parser.cc @@ -165,11 +165,14 @@ bool FillPreviewImageData(const TiffDirectory& tiff_directory, // Get color_space if (tiff_directory.Has(kExifTagColorSpace)) { std::uint32_t color_space; - success &= tiff_directory.Get(kExifTagColorSpace, &color_space); - if (color_space == 1) { - preview_image_data->color_space = PreviewImageData::kSrgb; - } else if (color_space == 65535 || color_space == 2) { - preview_image_data->color_space = PreviewImageData::kAdobeRgb; + if (tiff_directory.Get(kExifTagColorSpace, &color_space)) { + if (color_space == 1) { + preview_image_data->color_space = PreviewImageData::kSrgb; + } else if (color_space == 65535 || color_space == 2) { + preview_image_data->color_space = PreviewImageData::kAdobeRgb; + } + } else { + success = false; } } diff --git a/src/tiff_parser.h b/src/tiff_parser.h index 84b3fc6..e809274 100644 --- a/src/tiff_parser.h +++ b/src/tiff_parser.h @@ -163,7 +163,7 @@ bool GetFullDimension32(const tiff_directory::TiffDirectory& tiff_directory, std::uint32_t* width, std::uint32_t* height); // Reads the width and height of the crop information if available. -// Returns false if an error occured. +// Returns false if an error occurred. bool GetFullCropDimension(const tiff_directory::TiffDirectory& tiff_directory, std::uint32_t* width, std::uint32_t* height); |