Author: andy Date: 2011-12-20 13:44:11 -0700 (Tue, 20 Dec 2011) New Revision: 2350
Added: trunk/firefox/firefox-9.0-libpng-1.5-1.patch Log: patch to fix compiling firefox-9.0 with libpng-1.5 installed Added: trunk/firefox/firefox-9.0-libpng-1.5-1.patch =================================================================== --- trunk/firefox/firefox-9.0-libpng-1.5-1.patch (rev 0) +++ trunk/firefox/firefox-9.0-libpng-1.5-1.patch 2011-12-20 20:44:11 UTC (rev 2350) @@ -0,0 +1,48 @@ +Submitted By: Andrew Benton <[email protected]> +Date: 2011-12-20 +Initial Package Version: 1 +Upstream Status: From Mozilla Bugzilla bug #682677 +Origin: https://bug682677.bugzilla.mozilla.org/attachment.cgi?id=558454 +Description: Fixes compiling firefox-9.0 with libpng-1.5.6 installed + +diff -Naur mozilla-release~/modules/libpr0n/decoders/nsICODecoder.cpp mozilla-release/modules/libpr0n/decoders/nsICODecoder.cpp +--- mozilla-release~/modules/libpr0n/decoders/nsICODecoder.cpp 2011-12-16 20:29:37.000000000 +0000 ++++ mozilla-release/modules/libpr0n/decoders/nsICODecoder.cpp 2011-12-20 19:42:00.529798093 +0000 +@@ -385,8 +385,7 @@ + + // Raymond Chen says that 32bpp only are valid PNG ICOs + // http://blogs.msdn.com/b/oldnewthing/archive/2010/10/22/10079192.aspx +- if (static_cast<nsPNGDecoder*>(mContainedDecoder.get())->HasValidInfo() && +- static_cast<nsPNGDecoder*>(mContainedDecoder.get())->GetPixelDepth() != 32) { ++ if (!static_cast<nsPNGDecoder*>(mContainedDecoder.get())->IsValidICO()) { + PostDataError(); + } + return; +diff -Naur mozilla-release~/modules/libpr0n/decoders/nsPNGDecoder.h mozilla-release/modules/libpr0n/decoders/nsPNGDecoder.h +--- mozilla-release~/modules/libpr0n/decoders/nsPNGDecoder.h 2011-12-16 20:29:37.000000000 +0000 ++++ mozilla-release/modules/libpr0n/decoders/nsPNGDecoder.h 2011-12-20 19:42:00.529798093 +0000 +@@ -73,19 +73,12 @@ + + void EndImageFrame(); + +- // Checks if the info header contains valid information +- bool HasValidInfo() const ++ // Check if PNG is valid ICO (32bpp RGBA) ++ // http://blogs.msdn.com/b/oldnewthing/archive/2010/10/22/10079192.aspx ++ bool IsValidICO() const + { +- return mInfo && mInfo->valid; +- } +- +- // Obtain the pixel depth if available or 0 otherwise +- PRInt32 GetPixelDepth() const +- { +- if (!mInfo) { +- return 0; +- } +- return mInfo->pixel_depth; ++ return (png_get_color_type(mPNG, mInfo) == PNG_COLOR_TYPE_RGB_ALPHA && ++ png_get_bit_depth(mPNG, mInfo) == 8); + } + + public: -- http://linuxfromscratch.org/mailman/listinfo/patches FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page
