diff options
author | 2023-09-08 20:00:11 +0530 | |
---|---|---|
committer | 2023-09-08 17:00:48 +0000 | |
commit | f3c297985f77ee5f75d0ae980187e59c24b8318a (patch) | |
tree | 32fe5115cc3c3f683b4f5d79ec6423da3bea1004 | |
parent | e1ecba3aea899ae52218e3d7246c61db9bdf7717 (diff) |
ultrahdr: asan fix, default initialize member variable
The default value of mExifPos is commented as -1, but this is missing.
Further size_t is usually defined as unsigned int resulting negative
values as overflow. Best to declare it as ssize_t
Bug: 299596513
Test: atest ultrahdr_unit_test
Change-Id: I187f21aea44914993872def5a4889435d3f2d402
-rw-r--r-- | libs/ultrahdr/include/ultrahdr/jpegdecoderhelper.h | 2 | ||||
-rw-r--r-- | libs/ultrahdr/jpegr.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/libs/ultrahdr/include/ultrahdr/jpegdecoderhelper.h b/libs/ultrahdr/include/ultrahdr/jpegdecoderhelper.h index 30149c11f0..b86ce5f450 100644 --- a/libs/ultrahdr/include/ultrahdr/jpegdecoderhelper.h +++ b/libs/ultrahdr/include/ultrahdr/jpegdecoderhelper.h @@ -136,7 +136,7 @@ private: size_t mHeight; // Position of EXIF package, default value is -1 which means no EXIF package appears. - size_t mExifPos; + ssize_t mExifPos = -1; }; } /* namespace android::ultrahdr */ diff --git a/libs/ultrahdr/jpegr.cpp b/libs/ultrahdr/jpegr.cpp index 74760d9b32..705a121bc6 100644 --- a/libs/ultrahdr/jpegr.cpp +++ b/libs/ultrahdr/jpegr.cpp @@ -1268,7 +1268,7 @@ status_t JpegR::appendGainMap(jr_compressed_ptr primary_jpg_image_ptr, jpegr_compressed_struct new_jpg_image; new_jpg_image.data = nullptr; new_jpg_image.length = 0; - if (decoder.getEXIFPos() != 0) { + if (decoder.getEXIFPos() >= 0) { if (pExif != nullptr) { ALOGE("received EXIF from outside while the primary image already contains EXIF"); return ERROR_JPEGR_INVALID_INPUT_TYPE; |