Page MenuHomeSolus

Update freeimage 3.18.0

Authored by simniotiqu on Oct 14 2018, 6:53 PM.


Group Reviewers
Triage Team
  • Updated FreeImage_unbundle.patch and Use-system-dependencies.patch
  • Removed old patches
  • Removed FreeImage_RotateClassic (deprecated function) and internal Deprecation Manager (class DeprecationMgr)
  • DDS plugin now convert 16-bit uncompressed RGB (RGB444, RGB555, RGB565) to 24-bit RGB on loading
  • Added saving support to the PSD plugin
  • FreeImage_ConvertToRawBits now deals with palletized images containing transparency during conversion
  • Added saving support for 32-bit CMYK in JPEG plugin
  • Added FreeImage_Validate functions
  • Fixed PCX loader against malicious images with a bad window specification
  • Fixed TIFF loader with loading of RGB[A]F float images
  • Improved loading speed of PSD plugin
  • Improved GIF signature validation
  • Improved TARGA signature validation
  • Disabled ICC sRGB profile checking in PluginPNG:Save
  • Fixed saving of 32-bit CMYK converted to 24-bit RGB on loading
  • Fixed FreeImage_IsTransparent and FreeImage_GetColorType returned value for RGBA[16,F] images flagged as CMYK
  • Fixed a bug in FreeImage_Clone when working with wrapped buffer
  • Fixed a bug in PluginBMP:Save when saving a dib created with FreeImage_CreateView
  • Fixed loading of uncompressed DDS files when width / height are not a multiple of 4
  • Fixed XPM loader against malicious images with a bad header specification
  • Fixed TIFF loader with Exif loading
  • Refactored MultiPage and CacheFile mechanism
  • Fixed PCX file conversion crash on special files
  • Fixed FreeImage_FillBackground when using blending with an alpha-transparent foreground color over an opaque background
  • Fixed 64-bit conversion of parameters in sprintf calls
  • Fixed static cast to boolean in PluginJPEG
  • Improved error handling in PluginPNG
  • Fixed wrong exposure in exported HDR files
  • Fixed PluginTIFF:ReadThumbnail behavior when reading TIF with Exif metadata
Test Plan

Compiled the linux-gtk Example in FreeImage/Examples/Linux/ and ran it.

Diff Detail

R844 freeimage
No Linters Available
No Unit Test Coverage

Event Timeline

simniotiqu created this revision.Oct 14 2018, 6:53 PM
simniotiqu requested review of this revision.Oct 14 2018, 6:53 PM

Can you give a brief summary of what you changed and why it needed to be changed? Doesn't need to be in the summary or anything, there's just a lot going on with this patch and I want to make sure I understand it.

JoshStrobl requested changes to this revision.Oct 25 2018, 3:01 AM
This revision now requires changes to proceed.Oct 25 2018, 3:01 AM
simniotiqu updated this revision to Diff 10443.Nov 3 2018, 3:44 PM

Removed the "sanitize encodings / line endings" bit because it isn't needed if no documentation is generated.

The Update to upstream freeimage makes the previous patches unnecessary:


The FreeImage_unbundle.patch has a similar function to Disable-vendored-dependencies.patch and is copied from the fedora rawhide RPM package

For Use-system-dependencies.patch I updated for the new Makefile but didn't change much more than line numbers.

Both patches as well as clearing of the vendored dependencies in the yaml is needed so feeimage builds against the systems libraries. I followed mostly the debian and fedora packages for the inital package and the fedora package for the update.

I'm honestly not completely sure if all the changes are needed or this is the optimal configuration. As tests I can compile the example and also use as a build dependency for the slade3 (T4444) this is a dependency of.

JoshStrobl requested changes to this revision.Nov 5 2018, 5:49 PM

Still didn't address @DataDrake's comment.

This revision now requires changes to proceed.Nov 5 2018, 5:49 PM
DataDrake abandoned this revision.Dec 11 2018, 4:35 AM