[arch-general] libpng 1.6.7 broken?
Hi all, This following is an example of a thumbnail generated on a forum I help run. This image: http://i.imgur.com/XxaSVKa.png - Works in Firefox 25.0.1 on Windows 7 - Works in Chrome 31.0.1650.57 m on Windows 7 - Works in IE 10 on Win 7 - Works in the Win 7 photo viewer - Works in Firefox for Android - Works in Chrome for Android - Broken in Firefox 25.0.1 on Arch - Broken in Chromium 31.0.1650.57 on Arch - Broken when trying to load it into gpicview, The GIMP etc on Arch.
From what I can tell from here:
https://hg.mozilla.org/releases/mozilla-release/file/d20d499b219f/media/libp... Firefox 25.0.1 for Windows appears to be built statically against libpng 1.5.17. Any advice on where to report this, or what the best course of action is? If any of the devs have reported bugs to the libpng guys before, then I'd appreciate some help. Cheers. -- Simon Perry (aka Pezz)
Simon Perry <arch@sanxion.net> on Tue, 2013/12/03 21:23:
Hi all,
This following is an example of a thumbnail generated on a forum I help run.
This image: http://i.imgur.com/XxaSVKa.png
- Works in Firefox 25.0.1 on Windows 7 - Works in Chrome 31.0.1650.57 m on Windows 7 - Works in IE 10 on Win 7 - Works in the Win 7 photo viewer - Works in Firefox for Android - Works in Chrome for Android
- Broken in Firefox 25.0.1 on Arch - Broken in Chromium 31.0.1650.57 on Arch - Broken when trying to load it into gpicview, The GIMP etc on Arch.
From what I can tell from here:
https://hg.mozilla.org/releases/mozilla-release/file/d20d499b219f/media/libp...
Firefox 25.0.1 for Windows appears to be built statically against libpng 1.5.17.
Any advice on where to report this, or what the best course of action is? If any of the devs have reported bugs to the libpng guys before, then I'd appreciate some help.
I think libpng is right, and the image is broken. You can use pngfix (which is part of libpng package) to fix the image: $ pngfix --out=XxaSVKa2.png XxaSVKa.png IDAT TFB default 12 15 35843 67312 XxaSVKa.png After that every application using libpng should be able to load the new png file. -- main(a){char*c=/* Schoene Gruesse */"B?IJj;MEH" "CX:;",b;for(a/* Chris get my mail address: */=0;b=c[a++];) putchar(b-1/(/* gcc -o sig sig.c && ./sig */b/42*2-3)*42);}
On 03/12/13, Christian Hesse wrote: | I think libpng is right, and the image is broken. You can use pngfix (which | is part of libpng package) to fix the image: Why does everything else that I listed display it properly though? I can't exactly use pngfix on images dynamically generated via a PHP forum. Apologies if I sound argumentative. Cheers. -- Simon Perry (aka Pezz)
Simon Perry <arch@sanxion.net> on Tue, 2013/12/03 21:56:
On 03/12/13, Christian Hesse wrote:
| I think libpng is right, and the image is broken. You can use pngfix (which | is part of libpng package) to fix the image:
Why does everything else that I listed display it properly though?
As you already noticed: Because it uses another version of libpng.
I can't exactly use pngfix on images dynamically generated via a PHP forum.
I think you have three possibilities: * The image is not generated dynamically but stored in a database. Simply update the image with the fixed one. * The image is generated dynamically. Probably your server uses a version of libpng which is really old... Consider updating. * File a bug report for libpng upstream. -- main(a){char*c=/* Schoene Gruesse */"B?IJj;MEH" "CX:;",b;for(a/* Chris get my mail address: */=0;b=c[a++];) putchar(b-1/(/* gcc -o sig sig.c && ./sig */b/42*2-3)*42);}
On 03/12/13, Christian Hesse wrote: | > Why does everything else that I listed display it properly though? | | As you already noticed: Because it uses another version of libpng. So there's zero backward-compatbility? Seems unlikely. | I think you have three possibilities: | | * The image is not generated dynamically but stored in a database. Simply | update the image with the fixed one. Why? Because 1.6.7 can't handle older files? | * The image is generated dynamically. Probably your server uses a version of | libpng which is really old... Consider updating. The server is an EC2 box, using the Amazon version of RHEL, so yes it is libpng 1.2.49. Still, seems a bit silly for the newest version that Firefox dynamically uses to go "nope, not handling it, error". | * File a bug report for libpng upstream. This seems like the best course of action but, as I said origianlly, if anyone has experience lodging bugs with these guys, I'd appreciate any advice. Cheers. -- Simon Perry (aka Pezz)
Am 03.12.2013 12:19, schrieb Simon Perry:
| I think you have three possibilities: | | * The image is not generated dynamically but stored in a database. Simply | update the image with the fixed one.
Why? Because 1.6.7 can't handle older files?
IIRC, newer libpng versions refuse to handle some broken PNG files which do not follow the PNG specification. The files are broken, not the PNG interpreter - there has been a discussion about this a long time back. Of course, it might still be a bug in the latest libpng and the PNG files are alright.
participants (3)
-
Christian Hesse
-
Simon Perry
-
Thomas Bächler