[tbb-commits] [tor-browser] 208/311: Bug 1758975 - Ensure GIF color tables are opaque by default. r=tnikkel a=dmeehan

gitolite role git at cupani.torproject.org
Tue Apr 26 15:30:08 UTC 2022


This is an automated email from the git hooks/post-receive script.

pierov pushed a commit to branch geckoview-99.0.1-11.0-1
in repository tor-browser.

commit a702e3ca00123f48899ec2201b512bc44ba7a097
Author: Andrew Osmond <aosmond at mozilla.com>
AuthorDate: Fri Mar 18 15:22:46 2022 +0000

    Bug 1758975 - Ensure GIF color tables are opaque by default. r=tnikkel a=dmeehan
    
    Differential Revision: https://phabricator.services.mozilla.com/D141176
---
 image/decoders/nsGIFDecoder2.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/image/decoders/nsGIFDecoder2.cpp b/image/decoders/nsGIFDecoder2.cpp
index ebb0b7d7c6905..30ca44fc77bdc 100644
--- a/image/decoders/nsGIFDecoder2.cpp
+++ b/image/decoders/nsGIFDecoder2.cpp
@@ -91,8 +91,10 @@ nsGIFDecoder2::nsGIFDecoder2(RasterImage* aImage)
       mGIFOpen(false),
       mSawTransparency(false),
       mSwizzleFn(nullptr) {
-  // Clear out the structure, excluding the arrays.
+  // Clear out the structure, excluding the arrays. Ensure that the global
+  // colormap is initialized as opaque.
   memset(&mGIFStruct, 0, sizeof(mGIFStruct));
+  memset(mGIFStruct.global_colormap, 0xFF, sizeof(mGIFStruct.global_colormap));
 
   // Each color table will need to be unpacked.
   mSwizzleFn = SwizzleRow(SurfaceFormat::R8G8B8, SurfaceFormat::OS_RGBA);
@@ -855,6 +857,8 @@ LexerTransition<nsGIFDecoder2::State> nsGIFDecoder2::FinishImageDescriptor(
         mGIFStruct.local_colormap_buffer_size = mColormapSize;
         mGIFStruct.local_colormap =
             static_cast<uint32_t*>(moz_xmalloc(mColormapSize));
+        // Ensure the local colormap is initialized as opaque.
+        memset(mGIFStruct.local_colormap, 0xFF, mColormapSize);
       } else {
         mColormapSize = mGIFStruct.local_colormap_buffer_size;
       }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the tbb-commits mailing list