Closed Bug 1021713 Opened 6 years ago Closed 5 years ago

Update in-tree libpng to version 1.6.13

Categories

(Core :: ImageLib, defect, minor)

defect
Not set
minor

Tracking

()

VERIFIED FIXED
mozilla34

People

(Reporter: glennrp+bmo, Assigned: glennrp+bmo)

References

()

Details

Attachments

(1 file, 4 obsolete files)

libpng-1.6.11 has been released and an APNG patch is available at apng.sf.net.
There is a misplaced statement (ahead of declarations) in png.c.  This is fixed in libpng-1.6.12rc01;
libpng-1.6.12 will be released in a few days, so we need to skip updating mozilla to libpng-1.6.11 and do 1.6.12 instead.
Summary: Update in-tree libpng to version 1.6.11 → Update in-tree libpng to version 1.6.12
Libpng-1.6.12 is out now, and an APNG patch is available.
Ugh, looks like the in-tree import has local changes without a diff included for the next upstream update. That's sadmaking.
Attached patch Update libpng to version 1.6.12 (obsolete) — Splinter Review
Glenn, given comment 3, I'd really appreciate if you could take a quick look at this for sanity too.
Assignee: glennrp+bmo → ryanvm
Status: NEW → ASSIGNED
Attachment #8440682 - Flags: review?(jmuizelaar)
Attachment #8440682 - Flags: feedback?(glennrp+bmo)
Comment on attachment 8440682 [details] [diff] [review]
Update libpng to version 1.6.12

This is busted on Try.
https://tbpl.mozilla.org/php/getParsedLog.php?id=41793715&tree=Try
Attachment #8440682 - Flags: review?(jmuizelaar)
Attachment #8440682 - Flags: feedback?(glennrp+bmo)
(In reply to Ryan VanderMeulen [:RyanVM UTC-4] from comment #4)
> Created attachment 8440682 [details] [diff] [review]
> Update libpng to version 1.6.12
> 
> Glenn, given comment 3, I'd really appreciate if you could take a quick look
> at this for sanity too.

Yes there are a few differences between the in-tree libpng and the
apng-patched system libpng.  I'll see what I can do about that.  The differences
are mainly from back when the size of libpng mattered, but those are mostly
in mozlibpng.h not in libpng proper.
(In reply to Glenn Randers-Pehrson from comment #6)

> The
> differences
> are mainly from back when the size of libpng mattered, but those are mostly
> in mozlibpng.h not in libpng proper.

Others, including the three reported in the tryserver log about "options", etc.,
have to do with the fact that we are using mozlibpng.h instead of the "libpng"
configure system to build the in-tree libpng.
It should be sufficient to add "#define PNG_SET_OPTIONS_SUPPORTED" to media/libpng/mozpngconf.h.
Testing that now locally.
Attached patch Update libpng to version 1.6.12 (obsolete) — Splinter Review
Still busted:
https://tbpl.mozilla.org/php/getParsedLog.php?id=41815121&tree=Try

Attached is the patch I pushed. Do we need to do something with PNG_sRGB_PROFILE_CHECKS ?
Attachment #8440682 - Attachment is obsolete: true
(In reply to Ryan VanderMeulen [:RyanVM UTC-4] from comment #9)

> Still busted:

Yes there is a bit more to it than what I suggested in comment #8.  I'll
continue to work on this as time permits.  Fortunately there's nothing urgently needed in
libpng-1.6.12 in-tree (the PROFILE_CHECKS stuff would be helpful to
reduce some warnings when using the system libpng though).
Yes.  We'll skip libpng-1.6.11 and 1.6.12.  The update to libpng-1.6.13 is not urgent; it's just a minor code cleanup version and there aren't any security issues or new features.
Summary: Update in-tree libpng to version 1.6.12 → Update in-tree libpng to version 1.6.13
I'm renaming media/libpng/mozpngconf.h to media/libpng/pnglibconf.h to be more consistent with libpng.  This should help avoid the bustage reported in comment #5 and comment #9.
Attachment #8440945 - Attachment is obsolete: true
Changed new exported function png_set_option to MOZ_PNG_set_option.
Set PNG_sRGB_PROFILE_CHECKS to -1, to skip unnecessary checking/warning.
Attachment #8477041 - Attachment is obsolete: true
Also modified image/decoders/nsPNGDecoder.cpp to skip sRGB profile checking when using the "system libpng".
Attachment #8477164 - Attachment is obsolete: true
v02 needs a tryserver run.  My local build on Ubuntu 14.04 is working well.
Flags: needinfo?(ryanvm)
(In reply to Ryan VanderMeulen [:RyanVM UTC-4] from comment #3)
> Ugh, looks like the in-tree import has local changes without a diff included
> for the next upstream update. That's sadmaking.

Renaming mozpngconf.h to pnglibconf.h took care of that.  Now we are using the
same patch (apng.patch) for both the system library and the in-tree library.
Assignee: ryanvm → glennrp+bmo
Comment on attachment 8477401 [details] [diff] [review]
v02 Update intree libpng to version 1.6.13

Try was all green except for two reftest failures which appear to be unrelated to the patch.
Attachment #8477401 - Flags: review?(jmuizelaar)
Comment on attachment 8477401 [details] [diff] [review]
v02 Update intree libpng to version 1.6.13

Indeed, LGTM :)
Attachment #8477401 - Flags: feedback+
Attachment #8477401 - Flags: review?(jmuizelaar) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/d9c0f0fa42dc
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
Blocks: 1063229
Blocks: 1072340
Blocks: 1087841
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.