https://bugs.documentfoundation.org/show_bug.cgi?id=160690
Patrick Luby (volunteer) <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|[email protected] |[email protected] |desktop.org | Status|NEW |ASSIGNED --- Comment #9 from Patrick Luby (volunteer) <[email protected]> --- I think I found the cause: GIF images with color palettes of 16 colors or less need additional handling. I have a fix (see following debug patch) but I need to do more testing before I submit it to make sure it doesn't cause tdf#157635 or tdf#157793 to reoccur: diff --git a/vcl/source/filter/igif/gifread.cxx b/vcl/source/filter/igif/gifread.cxx index c3151f3274d0..6c3deb4da3d0 100644 --- a/vcl/source/filter/igif/gifread.cxx +++ b/vcl/source/filter/igif/gifread.cxx @@ -683,10 +683,10 @@ void GIFReader::CreateNewBitmaps() // Due to the switch from transparency to alpha in commit // 81994cb2b8b32453a92bcb011830fcb884f22ff3, mask out black // pixels in bitmap. - if (bEnhance) - aAnimationFrame.maBitmapEx = BitmapEx( aBmp8, aBmp8 ); - else - aAnimationFrame.maBitmapEx = BitmapEx( aBmp8 ); + Bitmap aAlphaMask( aBmp8 ); + if (!bEnhance) + aAlphaMask.Invert(); + aAnimationFrame.maBitmapEx = BitmapEx( aBmp8, aAlphaMask ); } aAnimationFrame.maPositionPixel = Point( nImagePosX, nImagePosY ); -- You are receiving this mail because: You are the assignee for the bug.
