GNOME Bugzilla – Bug 105859
Gtk+ image corruption on Linux Alpha
Last modified: 2014-10-22 13:25:57 UTC
On my Compaq/RedHat 7.2 Alpha workstation, a build of the stock Gtk+ (and associated libraries) causes image corruption problems. This is immediately evident in the 'pixbuf' section of gtk-demo where the displayed icons are rotating against a black background (instead of a Gnome logo). This problem also manifests itself has "fuzzy" corrupted icons on the panel and in the task switcher, but Nautilus appears fine. This does not happen with the Gtk+ (1.x?) that ships with RH7.2. This may be a bug specifically in the library for a specific image format, but I don't know which one specifically. I suspect this is a known problem, but I was unable to find a bug for it in bugzilla or through Google.
Further debugging: Using the demo "testpixbuf-scale" on a PNG, the image looks fine. But if I change the scale mode to TILES, I start to see corruption similar to how the icons look.
Further debugging: (sorry, guess I should have done this ahead of time) In the gtk-demo directory, I cannot view the 'background.jpg' file at all. Mozilla, ElectricEyes, and the test/demo programs display just a blank black image. EOG completely chokes on it and crashes. Nautilus shows a fuzzy black box in the icon view, and a "there was an error starting the image viewer" error if you attempt to open it. I'm running libjpeg-6b-16, which is libjpeg.so.62. Is this a known compatibility issue? Is there a newer version? (if so, should configure find the problem?)
How about non-gtk programs like xv or display (ImageMagick) ? Do these work ?
HRM. 'display' also shows the image as solid black. I don't have 'xv' on this system to test. Is it possible that libjpeg (as shipped by Compaq/RedHat) is broken on Alpha? I definately get some JPEG images displayed, but not this one. Is this special somehow? Is there a different jpeg library that I can try someplace? We may be able to write off the JPEG issue as unrelated to Gnome (but maybe someone here will know how to fix it, since it does affect Gnome on the platform.) I'm not sure though that this problem is related to my other problem of icons being corrupted and "fuzzy". Aren't those all PNG?
If display also shows black, I would think it is a libjpeg problem (or the image really got broken somehow) Can you attach a screenshot of the corrupted icons and TILES scaling problems ?
Created attachment 14303 [details] Corrputed Icons
Created attachment 14304 [details] Scaling Demo Corruption
Looks like some rounding errors in the setup of the scaling matrices... But in order to exclude any image libaries (like libpng), it would be nice if you could verify that these artifacs also occur with images for which gdk-pixbuf doesn't use external libs: xpm, xbm, tga, ico,...
Created attachment 14322 [details] Scaling Demo Corruption (with XPM file)
I can easily demonstrate a problem when scaling *up* images using the testpixbuf-scale program with Gtk+, but that can't really scale down. What is the best way to reliably demonstrate the icon corruption from my first attachment with an external program?
Created attachment 14323 [details] Nautilus - icons not scaled (no corruption)
Created attachment 14324 [details] Nautilus - icons scaled 75% (with corruption)
Can easily replicate the corrupted problems in Nautilus. (Yay for convenient scaling of icons...) Note that the scaling up corruption may not be related to the scaling down corruption. The scaling up corruption only happens in the "tiles" scaling mode and I was unable to duplicate it in Nautilus. (Probably, they use a different mode by default.) The scaling down problems appear to apply more universally and I see it in Nautilus, the panel, and in pretty much every other app.
Going to be hard to fix this without getting someone with the interest in debugging it together with an affected machine.
I get pixmap corruption in xchat 1.8.11 on AMD's AMD64 architecture with a 64bit kernel and userland. This is running Red Hat Linux (GinGin64) release for AMD64. Not sure if it is the same bug, but it is similar. It's possible this is just a generic 64bit bug in GTK. My problem could perhaps just be an xchat bug though. I may debug this in the future sometime time depending.
I can't reproduce the testpixbuf-scale issue on x86_64 (remote displayed) ... I'm not sure the xchat problem is really related. Plus, we haven't had any other reports of problems, with quite a few people running GNOME on x86_64 and ia64. I almost wonder if this is a compiler issue. with the 7.2/alpha compiler.
Mass changing gtk+ bugs with target milestone of 2.4.2 to target 2.4.4, as Matthias said he was trying to do himself on IRC and was asking for help with. If you see this message, it means I was successful at fixing the borken-ness in bugzilla :) Sorry for the spam; just query on this message and delete all emails you get with this message, since there will probably be a lot.
As we didn't get any new information on following releases since 2003, let's assume it was a compiler bug, as per comment 16.