Bug 18837 - Icon for fillets-ng apparently corrupted
Summary: Icon for fillets-ng apparently corrupted
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 5
Hardware: x86_64 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: advisory mga5-64-ok
Keywords: validated_update
Depends on:
Blocks:
 
Reported: 2016-07-01 19:21 CEST by Doug Laidlaw
Modified: 2016-07-19 14:47 CEST (History)
3 users (show)

See Also:
Source RPM: fillets-ng
CVE:
Status comment:


Attachments
qcad icon (701 bytes, image/png)
2016-07-02 01:09 CEST, Barry Jackson
Details
old qcad icon in gimp in cauldron (38.01 KB, image/png)
2016-07-02 17:37 CEST, Barry Jackson
Details
fillets-ng icon without fix (32.48 KB, image/png)
2016-07-02 18:45 CEST, Barry Jackson
Details
fillets-ng icon after fix (33.02 KB, image/png)
2016-07-02 18:48 CEST, Barry Jackson
Details
plasma menu with fillets_ng icon (63.84 KB, image/png)
2016-07-17 13:09 CEST, Barry Jackson
Details
Menu item in Mga5 (174.94 KB, image/png)
2016-07-17 13:36 CEST, Barry Jackson
Details

Description Doug Laidlaw 2016-07-01 19:21:16 CEST
Description of problem:In both  Official and Cauldron, the PNG icon for fillets-ng cannot be rendered.  Ristretto gives message "Fatal error reading PNG image file: Decompression error in IDAT."  GIMP shows only top quarter of image.  KDE mumbles something about "image too far back."  The icon is in /usr/share/icons/hicolor/32x32 only.


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.
Comment 1 Barry Jackson 2016-07-02 01:01:37 CEST
That's interesting.

I have used a copy of qcad installed to my home dir for years in all versions of Mageia so far. (it was a paid copy statically linked).
The icon now fails to render in exactly the same way as you describe.

I will attach the icon file here.

CC: (none) => zen25000

Comment 2 Barry Jackson 2016-07-02 01:09:16 CEST
Created attachment 8104 [details]
qcad icon

This file is dated 2007 and has worked fine for me since Mandriva 2008.
Now it appears corrupted in all the image viewers that I have tested so far in Cauldron. It was working in Mageia 5 but I have yet to re-test there.
Comment 3 Doug Laidlaw 2016-07-02 01:23:20 CEST
In that case, there must be a more general problem, but other png images are not affected.  goa-account.png is completely transparent in Cauldron.  I just installed qcad in Cauldron to test. The icon is showing up O.K. in the menu.  The IDAT system is explained at http://ubuntuforums.org/showthread.php?t=1402412
Comment 4 Doug Laidlaw 2016-07-02 01:44:33 CEST
The link I gave was to a similar case.  The reply suggested a quirky bug in libpng.
David GEIGER 2016-07-02 11:11:30 CEST

CC: (none) => geiger.david68210
Assignee: bugsquad => rverschelde

Comment 5 Barry Jackson 2016-07-02 16:53:00 CEST
This is what I was suspecting - some backward incompatibility in libpng.
Our packaged qcad is ok, (apart from other bugs) the icon changed some years back.
It is the icon in my old qcad pro version that I still use that shows this problem.
Just looking at pngcheck, but we don't have it - I will try to re-build SuSE's package to test.
Comment 6 Barry Jackson 2016-07-02 17:22:50 CEST
OK I have a package for pngcheck now and it shows this for my old qcad icon:

[baz@localhost img]$ pngcheck -vtf qcadicon.png
File: qcadicon.png (701 bytes)
  chunk IHDR at offset 0x0000c, length 13
    32 x 32 image, 32-bit RGB+alpha, non-interlaced
  chunk bKGD at offset 0x00025, length 6
    red = 0x0000, green = 0x0000, blue = 0x0000
  chunk pHYs at offset 0x00037, length 9: 2835x2835 pixels/meter (72 dpi)
  chunk tIME at offset 0x0004c, length 7:  2 Aug 2005 10:44:18 UTC
  chunk IDAT at offset 0x0005f, length 586
    zlib: deflated, 1K window, maximum compression
  chunk IEND at offset 0x002b5, length 0
No errors detected in qcadicon.png (6 chunks, 82.9% compression).

If you would like to test your png with it, pngcheck for mga6 x86_64 is here:

http://mtf.no-ip.co.uk/pub/linux/barjac/distrib/cauldron/x86_64/media/extra/release/pngcheck-2.3.0-0.1.mga6.x86_64.rpm

So it does appear that the png is not faulty, but that libpng changed and broke it.
Comment 7 Barry Jackson 2016-07-02 17:37:19 CEST
Created attachment 8105 [details]
old qcad icon in gimp in cauldron
Comment 8 Barry Jackson 2016-07-02 18:33:19 CEST
\o/ got the fix!

In the pngcheck package are two other utilities:

    pngsplit - break a PNG, MNG or JNG image into constituent chunks (numbered for easy reassembly)
    png-fix-IDAT-windowsize - fix minor zlib-header breakage caused by libpng 1.2.6 

Out of curiosity I ran png-fix-IDAT-windowsize on my old qcad icon and now it is fine!

running:
png-fix-IDAT-windowsize qcadicon.png
produces:
qcadicon-fixed.png
...and leaves the original intact, so the original needs to be deleted and the new one re-named.

Strangely the file size is unchanged but it works ;)

@ Remi
Shall I push this tool (pngcheck) into Mageia? ..or will my build be enough to fix these few files?
Comment 9 Barry Jackson 2016-07-02 18:45:08 CEST
Created attachment 8106 [details]
fillets-ng icon without fix

Quickly testing this on the fillets-ng icon in the package SOURCES works fine
this is the before.
Comment 10 Barry Jackson 2016-07-02 18:48:29 CEST
Created attachment 8107 [details]
fillets-ng icon after fix

This is the fixed icon.

I will look more into the package later to check if there are other pngs affected and fix them before pushing to cauldron.
Comment 11 Barry Jackson 2016-07-02 22:28:58 CEST
Pushed to Cauldron.

###############################
Update Advisory

Package fillets-ng-1.0.1-9.1.mga5 has been submitted to 5/updates_testing

###############################
Description

This update fixes a broken desktop icon in the package.
See https://bugs.mageia.org/show_bug.cgi?id=18837

###############################
Affected rpms

fillets-ng-1.0.1-11.mga6.src.rpm
fillets-ng-1.0.1-11.mga6.i586.rpm
fillets-ng-debuginfo-1.0.1-11.mga6.i586.rpm
fillets-ng-1.0.1-11.mga6.x86_64.rpm
fillets-ng-debuginfo-1.0.1-11.mga6.x86_64.rpm

##############################
Testing

Install the main package and check that the desktop icon does not appear corrupted.

Assignee: rverschelde => qa-bugs

Comment 12 Barry Jackson 2016-07-02 23:41:13 CEST
(In reply to Doug Laidlaw from comment #3)
> In that case, there must be a more general problem, but other png images are
> not affected.  goa-account.png is completely transparent in Cauldron.  I
> just installed qcad in Cauldron to test. The icon is showing up O.K. in the
> menu.  The IDAT system is explained at
> http://ubuntuforums.org/showthread.php?t=1402412

Regarding the goa-account.png files it does look to me as though these files are in fact blank.
Looking at them with a hex editor I can see the IDAT text info but the main body of the file is all zeros.
Comment 13 Barry Jackson 2016-07-03 00:11:14 CEST
New bug reported on the goa issue:
https://bugs.mageia.org/show_bug.cgi?id=18844
Comment 14 Doug Laidlaw 2016-07-04 05:33:59 CEST
new icon for fillets-ng works in Cauldron. I copied it across to Official and it works there as well.
Comment 15 Rémi Verschelde 2016-07-04 09:53:43 CEST
(In reply to Barry Jackson from comment #8)
> @ Remi
> Shall I push this tool (pngcheck) into Mageia? ..or will my build be enough
> to fix these few files?

Please do, yes, this sounds like it can be useful in various cases. Might run it on the png files of the open source games I develop, just in case :)

Thanks for handling the fix and update!
Comment 16 Barry Jackson 2016-07-05 01:31:18 CEST
pngcheck is now in cauldron
Comment 17 claire robinson 2016-07-14 17:06:49 CEST
Testing mga5 64

Before:
gwenview /usr/share/icons/hicolor/32x32/apps/fillets-ng.png

Shows half an icon as described.

After:
It shows the full icon. There is no icon in the menu for this game though. Is there one missing Barry?

$ find /usr/share/icons/ -name fillets-ng*
/usr/share/icons/hicolor/32x32/apps/fillets-ng.png

Game works fine.
Comment 18 claire robinson 2016-07-14 21:43:46 CEST
Adding  feedback marker for now

Whiteboard: (none) => feedback

Comment 19 Barry Jackson 2016-07-17 13:09:36 CEST
Created attachment 8193 [details]
plasma menu with fillets_ng icon

Strange, it works OK here ;)
Comment 20 Doug Laidlaw 2016-07-17 13:16:56 CEST
Looking good.
Comment 21 Barry Jackson 2016-07-17 13:23:29 CEST
I just realized that was Mga6, but it also works fine in Mga5 KDE4 - I just checked in a recent install with the package from updates_testing.
I tried to grab a screen shot, but the capture program seems missing from that install.
Comment 22 Barry Jackson 2016-07-17 13:36:39 CEST
Created attachment 8194 [details]
Menu item in Mga5

Ah found it :)
Comment 23 claire robinson 2016-07-19 14:19:19 CEST
yeah, it's there after a reboot. Thanks.

Validating.

Keywords: (none) => validated_update
Whiteboard: feedback => mga5-64-ok
CC: (none) => sysadmin-bugs

Comment 24 claire robinson 2016-07-19 14:28:02 CEST
advisory uploaded.

Whiteboard: mga5-64-ok => advisory mga5-64-ok

Comment 25 Mageia Robot 2016-07-19 14:47:47 CEST
An update for this issue has been pushed to the Mageia Updates repository.

http://advisories.mageia.org/MGAA-2016-0104.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.