Closed Bug 423191 Opened 16 years ago Closed 16 years ago

PNG image does not display

Categories

(Core :: Graphics: ImageLib, defect)

x86
Linux
defect
Not set
major

Tracking

()

RESOLVED DUPLICATE of bug 411831

People

(Reporter: dpotapov, Unassigned)

References

()

Details

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9b4) Gecko/2008030318 Firefox/3.0b4
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9b4) Gecko/2008030318 Firefox/3.0b4

Loading the aforementioned PNG hungs at about 90%. After that, any click at the image causes it to disappear completely. The system becomes *very* slow at response. Switching between any windows takes about 15-30 seconds. Firefox becomes practically non-functioning, but I was able to close it a normal way.
I have not encountered any problem with other images...


Reproducible: Always

Steps to Reproduce:
1. Open http://kdbg.sourceforge.net/kdbgtotal.png in the browser

Actual Results:  
90% of the image is shown

Expected Results:  
the whole image

OS: Debian GNU/Linux (lenny)

Debian Lenny is running in the chroot environment and is connected to the host X server, which is running Debian Etch.

================
about:buildconfig

Build platform
target
i686-pc-linux-gnu

Build tools
Compiler 	Version 	Compiler flags
/tools/gcc/bin/gcc 	gcc version 4.1.2 20061011 (Red Hat 4.1.1-29) 	-Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -pedantic -gstabs+ -fno-strict-aliasing -pthread -pipe
/tools/gcc/bin/g++ 	gcc version 4.1.2 20061011 (Red Hat 4.1.1-29) 	-fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-long-long -pedantic -gstabs+ -fno-strict-aliasing -fshort-wchar -pthread -pipe

Configure arguments
--enable-application=browser --enable-update-channel=beta --enable-update-packaging --enable-optimize --disable-debug --disable-tests --enable-official-branding 
=========

ldd output:
	linux-gate.so.1 =>  (0xffffe000)
	libpthread.so.0 => /lib/libpthread.so.0 (0xb7f23000)
	libjemalloc.so => /opt/firefox-3.0b4/libjemalloc.so (0xb7f1b000)
	libxul.so => /opt/firefox-3.0b4/libxul.so (0xb72c6000)
	libmozjs.so => /opt/firefox-3.0b4/libmozjs.so (0xb7236000)
	libxpcom.so => /opt/firefox-3.0b4/libxpcom.so (0xb7232000)
	libplds4.so => /opt/firefox-3.0b4/libplds4.so (0xb722f000)
	libplc4.so => /opt/firefox-3.0b4/libplc4.so (0xb722b000)
	libnspr4.so => /opt/firefox-3.0b4/libnspr4.so (0xb71f9000)
	libdl.so.2 => /lib/libdl.so.2 (0xb71f4000)
	libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb6e7e000)
	libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb6e63000)
	libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb6ddf000)
	libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb6dc7000)
	libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb6dbd000)
	libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb6d7e000)
	libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb6d07000)
	libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb6d03000)
	libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb6cc7000)
	libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb6c18000)
	libX11.so.6 => /usr/lib/libX11.so.6 (0xb6b2c000)
	libm.so.6 => /lib/libm.so.6 (0xb6b05000)
	libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb6a18000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb6a0b000)
	libc.so.6 => /lib/libc.so.6 (0xb68cd000)
	/lib/ld-linux.so.2 (0xb7f43000)
	libsqlite3.so => /opt/firefox-3.0b4/libsqlite3.so (0xb686b000)
	libsmime3.so => /opt/firefox-3.0b4/libsmime3.so (0xb684c000)
	libssl3.so => /opt/firefox-3.0b4/libssl3.so (0xb6827000)
	libnss3.so => /opt/firefox-3.0b4/libnss3.so (0xb674c000)
	libnssutil3.so => /opt/firefox-3.0b4/libnssutil3.so (0xb6739000)
	libsoftokn3.so => /opt/firefox-3.0b4/libsoftokn3.so (0xb670f000)
	libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb66e6000)
	libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb66de000)
	libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb666f000)
	libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb6646000)
	libXft.so.2 => /usr/lib/libXft.so.2 (0xb6634000)
	libXt.so.6 => /usr/lib/libXt.so.6 (0xb65e4000)
	libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb65df000)
	libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb65dc000)
	libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb65d9000)
	libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb65d4000)
	libXext.so.6 => /usr/lib/libXext.so.6 (0xb65c6000)
	libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb65c2000)
	libXi.so.6 => /usr/lib/libXi.so.6 (0xb65ba000)
	libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb65b4000)
	libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb65ab000)
	libz.so.1 => /usr/lib/libz.so.1 (0xb6596000)
	libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb6572000)
	libselinux.so.1 => /lib/libselinux.so.1 (0xb655a000)
	libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb6533000)
	libXau.so.6 => /usr/lib/libXau.so.6 (0xb6530000)
	libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb652b000)
	libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb650a000)
	libSM.so.6 => /usr/lib/libSM.so.6 (0xb6502000)
	libICE.so.6 => /usr/lib/libICE.so.6 (0xb64eb000)
	librt.so.1 => /lib/librt.so.1 (0xb64e2000)
wfm with SM trunk on win32
Component: General → ImageLib
Product: Firefox → Core
QA Contact: general → imagelib
Version: unspecified → Trunk
I have tested it with the last nightly build from trunk, and I still have the same problem.
Did you run Firefox in the safemode already ?
This could be also a linux only bug
Yes, I have tried the safemode.

It is most likely to be a linux specific bug, but other programs including Firefox 2.0.0.12 does not have any problem with displaying this PNG image.

Oddly enough, another KDbg screenshot exhibits the same problem with Firefox 3:
http://kdbg.sourceforge.net/kdbglocalswatches.png

I am ready to invest some time for digging into this problem, but I don't know much about Firefox. I have never compiled it from the source code. So, any advice about about where to start will be appreciated. 
I asked someone on IRC and he told me that the image works for him on fedora 8.
I'm a win32 user and i don't know why you have this problem...
You could try to create an additional test profile :
http://kb.mozillazine.org/Profile_Manager

Do you get any Console output while loading the image or do you get an error message in the Firefox error Console ?
I created a test profile, but that did not make any difference.

Also, I have found no other images except those two that have this problem.

I have tried different nightly builds from ftp.mozilla.org/pub/mozilla.org/firefox/nightly/ and it seems all of them that mark as Firefox3 have this problem. The earliest that I have tried was ftp.mozilla.org/pub/mozilla.org/firefox/nightly/2006/04/2006-04-07-04-trunk/firefox-3.0a1.en-US.linux-i686.tar.bz2
I have tried it both on Debian/Etch and Debian/Lenny with the same effect.

At the same time, the nightly build a day before does not have this problem, but it is firefox-1.6a1.en-US.linux-i686.tar.bz2

There is no error message on the console with Firefox 3 beta4.

(With some earlier alpha versions from April 2006, I got error messages about fonts when I ran them on Debian/Lenny, and indeed text was broken, but everything worked on Debian/Etch. So, it is irrelevant to this problem.)
I have downloaded and successfully build Firefox from trunk with the following
options:

cat .mozconfig
. $topsrcdir/browser/config/mozconfig
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --disable-tests

and then run it in the safe mode using a newly created 'test' profile:

./dist/bin/firefox -safe-mode http://kdbg.sourceforge.net/kdbgtotal.png


Here is the log:

=============================================================================
WARNING: NS_ENSURE_TRUE(compMgr) failed: file nsComponentManagerUtils.cpp, line 90
WARNING: NS_ENSURE_TRUE(compMgr) failed: file nsComponentManagerUtils.cpp, line 90
WARNING: NS_ENSURE_TRUE(compMgr) failed: file nsComponentManagerUtils.cpp, line 90
*** Registering components in: Apprunner
WARNING: dependent window created without a parent: file nsAppStartup.cpp, line 458
++WEBSHELL 0x825b520 == 1
++DOMWINDOW == 1 (0x823335c) [serial = 1] [Outer = (nil)]
++DOMWINDOW == 2 (0x82336bc) [serial = 2] [Outer = 0x8233330]
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
--WEBSHELL 0x825b520 == 0
WARNING: nsExceptionService ignoring thread destruction after shutdown: file nsExceptionService.cpp, line 191
--DOMWINDOW == 1 (0x823335c) [serial = 1] [Outer = (nil)]
--DOMWINDOW == 0 (0x82336bc) [serial = 2] [Outer = (nil)]
*** Registering components in: Apprunner
*** Registering components in: nsPrefModule
*** Registering components in: nsUConvModule
*** Registering components in: nsUCvMathModule
*** Registering components in: nsI18nModule
*** Registering components in: necko
*** Registering components in: nsAuthModule
*** Registering components in: xpconnect
*** Registering components in: nsChardetModule
*** Registering components in: nsJarModule
*** Registering components in: ZipWriterModule
*** Registering components in: nsCookieModule
*** Registering components in: nsPermissionsModule
*** Registering components in: mozStorageModule
*** Registering components in: nsRDFModule
*** Registering components in: JavaScript_Debugger
*** Registering components in: nsSecurityManagerModule
*** Registering components in: nsParserModule
*** Registering components in: nsGfxModule
*** Registering components in: nsImageLib2Module
*** Registering components in: nsPluginModule
*** Registering components in: nsWidgetGtk2Module
*** Registering components in: nsTransactionManagerModule
*** Registering components in: nsComposerModule
*** Registering components in: nsLayoutModule
*** Registering components in: docshell_provider
*** Registering components in: embedcomponents
*** Registering components in: Browser_Embedding_Module
*** Registering components in: appshell
*** Registering components in: nsXMLExtrasModule
*** Registering components in: nsUniversalCharDetModule
*** Registering components in: nsCJVMManagerModule
*** Registering components in: nsAccessibilityModule
*** Registering components in: nsChromeModule
*** Registering components in: nsFindComponent
*** Registering components in: nsFileViewModule
*** Registering components in: nsXPIntlModule
*** Registering components in: nsWindowDataSourceModule
*** Registering components in: application
*** Registering components in: RemoteServiceModule
*** Registering components in: nsPlacesModule
*** Registering components in: tkAutoCompleteModule
*** Registering components in: satchel
*** Registering components in: CommandLineModule
*** Registering components in: nsToolkitCompsModule
*** Registering components in: mozSpellCheckerModule
*** Registering components in: nsUnixProxyModule
*** Registering components in: nsSoftwareUpdate
*** Registering components in: BOOT
*** Registering components in: NSS
*** Registering components in: PKI
*** Registering components in: nsAutoConfigModule
*** Registering components in: nsSystemPrefModule
*** Registering components in: nsDBusModule
*** Registering components in: nsIconDecoderModule
*** Registering components in: BrowserDirProvider
*** Registering components in: nsBrowserCompsModule
*** registering nsHandlerService.js: [ Handler Service ]
*** registering nsWebHandlerApp.js: [ A web handler for protocols and content ]
*** registering nsURLFormatter.js: [ Application URL Formatter Service ]
*** registering nsContentPrefService.js: [ Content Pref Service, Hostname Grouper ]
*** registering jsconsole-clhandler.js: [ jsConsoleHandler ]
*** loading ISO8601DateUtils
*** registering FeedProcessor.js: [ Feed Processor, Feed Result, Feed, Feed Entry, Feed Text Construct, Feed Generator, Feed Person ]
*** registering nsTaggingService.js: [ Places Tagging Service ]
*** registering nsLoginManager.js: [ LoginManager ]
*** registering nsLoginManagerPrompter.js: [ LoginManagerPromptFactory, LoginManagerPrompter ]
*** registering nsLoginInfo.js: [ LoginInfo ]
*** registering storage-Legacy.js: [ LoginManagerStorage_legacy ]
*** registering nsDownloadManagerUI.js: [ Used to show the Download Manager's UI to the user ]
*** registering nsTryToClose.js: [ tryToClose Service ]
*** registering nsExtensionManager.js: [ Extension Manager, Extension Manager Data Source, Update Item ]
*** registering nsBlocklistService.js: [ Blocklist Service ]
*** registering nsAddonRepository.js: [ Addon Repository ]
*** registering nsContentDispatchChooser.js: [ Used to handle different types of content ]
*** registering nsMicrosummaryService.js: [ Microsummary Service ]
*** registering nsSearchSuggestions.js: [ Remote Search Suggestions ]
*** registering nsSessionStore.js: [ Browser Session Store Service ]
*** registering nsSessionStartup.js: [ Browser Session Startup Service ]
*** registering nsSetDefaultBrowser.js: [ Default Browser Cmdline Handler ]
*** registering FeedWriter.js: [ Feed Writer ]
*** registering WebContentConverter.js: [ Web Content Handler Registrar ]
*** registering nsPlacesTransactionsService.js: [ Places Transaction Manager ]
*** registering nsBrowserGlue.js: [ Firefox Browser Glue Service ]
*** registering aboutRobots.js: [ About Robots ]
*** registering fuelApplication.js: [ Application ]
*** Registering components in: Apprunner
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80520015: file nsXREDirProvider.cpp, line 1147
++WEBSHELL 0x8249d80 == 1
++DOMWINDOW == 1 (0x81a7e5c) [serial = 1] [Outer = (nil)]
WARNING: dependent window created without a parent: file nsAppStartup.cpp, line 458
++WEBSHELL 0x8249600 == 2
++DOMWINDOW == 2 (0x81a800c) [serial = 2] [Outer = (nil)]
++DOMWINDOW == 3 (0x81a836c) [serial = 3] [Outer = 0x81a7fe0]
++DOMWINDOW == 4 (0x81a887c) [serial = 4] [Outer = 0x81a7e30]
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
--WEBSHELL 0x8249600 == 1
++WEBSHELL 0x8249600 == 2
++DOMWINDOW == 5 (0x81a81bc) [serial = 5] [Outer = (nil)]
++DOMWINDOW == 6 (0x81a9b0c) [serial = 6] [Outer = 0x81a8190]
++WEBSHELL 0x824bb80 == 3
++DOMWINDOW == 7 (0x81ab60c) [serial = 7] [Outer = (nil)]
WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ../../dist/include/layout/nsPresContext.h, line 951
WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ../../dist/include/layout/nsPresContext.h, line 951
++DOMWINDOW == 8 (0x81abb1c) [serial = 8] [Outer = 0x81ab5e0]
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
*** e = [Exception... "Component returned failure code: 0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE) [nsIJSCID.getService]"  nsresult: "0x80570016 (NS_ERROR_XPC_GS_RETURNED_FAILURE)"  location: "JS frame :: chrome://browser/content/utilityOverlay.js :: getShellService :: line 285"  data: no]
++DOMWINDOW == 9 (0x90a235c) [serial = 9] [Outer = 0x81ab5e0]
###!!! ASSERTION: non-root frame's desired size changed during an incremental reflow: '(target == rootFrame && size.height == NS_UNCONSTRAINEDSIZE) || (desiredSize.width == size.width && desiredSize.height == size.height)', file nsPresShell.cpp, line 6312
###!!! ASSERTION: reflow state computed incorrect width: 'reflowState.ComputedWidth() == size.width - reflowState.mComputedBorderPadding.LeftRight()', file nsPresShell.cpp, line 6298
###!!! ASSERTION: reflow roots must not have visible overflow: 'desiredSize.mOverflowArea == nsRect(nsPoint(0, 0), nsSize(desiredSize.width, desiredSize.height))', file nsPresShell.cpp, line 6316
--DOMWINDOW == 8 (0x81abb1c) [serial = 8] [Outer = 0x81ab5e0]
WARNING: Asked to remove non-existent observer: file nsImageLoadingContent.cpp, line 352
--WEBSHELL 0x8249d80 == 2
--DOMWINDOW == 7 (0x81a887c) [serial = 4] [Outer = 0x81a7e30]
--WEBSHELL 0x8249600 == 1
--DOMWINDOW == 6 (0x81a7e5c) [serial = 1] [Outer = (nil)]
--WEBSHELL 0x824bb80 == 0
WARNING: nsExceptionService ignoring thread destruction after shutdown: file nsExceptionService.cpp, line 191
--DOMWINDOW == 5 (0x81ab60c) [serial = 7] [Outer = (nil)]
--DOMWINDOW == 4 (0x90a235c) [serial = 9] [Outer = (nil)]
WARNING: not an nsIRDFRemoteDataSource: 'remote != nsnull', file nsLocalStore.cpp, line 312
--DOMWINDOW == 3 (0x81a836c) [serial = 3] [Outer = 0x81a7fe0]
WARNING: not an nsIRDFRemoteDataSource: 'remote != nsnull', file nsLocalStore.cpp, line 312
--DOMWINDOW == 2 (0x81a81bc) [serial = 5] [Outer = (nil)]
--DOMWINDOW == 1 (0x81a9b0c) [serial = 6] [Outer = (nil)]
--DOMWINDOW == 0 (0x81a800c) [serial = 2] [Outer = (nil)]
nsStringStats
 => mAllocCount:          18693
 => mReallocCount:         3098
 => mFreeCount:           18693
 => mShareCount:          18821
 => mAdoptCount:           1211
 => mAdoptFreeCount:       1211
=============================================================================

The image was not displayed properly, but I see nothing in the log that hints
to the cause of the problem.
this could be a dupe of bug 411831
Perhaps, it is a dupe of bug 411831.
At least, I have all problems described there...
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.