Closed Bug 398537 Opened 17 years ago Closed 17 years ago

aPNG images in css cursor rule leak a lot of memory

Categories

(Core :: Widget: Gtk, defect)

x86
Linux
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla1.9beta1

People

(Reporter: viapanda, Assigned: MatsPalmgren_bugz)

References

()

Details

(5 keywords)

Attachments

(3 files)

User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.6) Gecko/20070801 (Debian-1.8.1.6-1) Epiphany/2.14
Build Identifier: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9a9pre) Gecko/2007100404 Minefield/3.0a9pre

aPNG images used in a css cursor rule trigger a condition where memory is consumed until exhausted. 

Reproducible: Always

Steps to Reproduce:
1. monitor memory consumed by the firefox process. Load the testcase
2. open the menu in the testcase and hover quickly on elements
3. see memory consumption going up
Actual Results:  
Leak

Expected Results:  
Not leak :-)

I tried to simplified the testcase, but am still confused what exactly the problem is (some bad interaction between css and aPNG).
Note that:
- this aPNG file, when displayed in the browser, doesn't (appears to) leak memory, and displays fine (either as fixed in ff2, or animated in ff3)
- the same testcase, if using a regular png, doesn't leak
- a regular PNG image is correctly displayed as a css cursor, while aPNG is not (this may be another bug/RFE)
- this affects ff2 as well
Just thought I would mention this (of course?) affects other Gecko browsers as well.
Keywords: mlk
GTK2 nsWindow::SetCursor leaks 'pixbuf' when the image is too big:
http://bonsai.mozilla.org/cvsblame.cgi?file=/mozilla/widget/src/gtk2/nsWindow.cpp&rev=1.229&root=/cvsroot&mark=1031,1041,1042#988
Looks like there are a few other leak paths in this method as well.

It's a regression from bug 361298, so it also occurs on branches and the
leak is pretty bad so we should probably fix this on branches as well.
Patch coming up...
Assignee: nobody → mats.palmgren
Blocks: 361298
Status: UNCONFIRMED → NEW
Component: ImageLib → Widget: Gtk
Ever confirmed: true
Keywords: pp, regression
Fixes leak and OOM problems. This patch is for trunk and the 1.8 branch.
Attachment #283660 - Flags: superreview?(roc)
Attachment #283660 - Flags: review?(roc)
Attachment #283661 - Flags: superreview?(roc)
Attachment #283661 - Flags: review?(roc)
Flags: blocking1.8.1.9?
Attachment #283660 - Flags: superreview?(roc)
Attachment #283660 - Flags: superreview+
Attachment #283660 - Flags: review?(roc)
Attachment #283660 - Flags: review+
Attachment #283661 - Flags: superreview?(roc)
Attachment #283661 - Flags: superreview+
Attachment #283661 - Flags: review?(roc)
Attachment #283661 - Flags: review+
Attachment #283660 - Flags: approval1.9?
Attachment #283660 - Flags: approval1.9? → approval1.9+
mozilla/widget/src/gtk2/nsWindow.cpp 	1.232 

-> FIXED
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9 M9
I don't see the checkin on branch, and wonder if it got forgotten (as this bug is now closed).

Sorry for the spam if I missed something, and thanks a lot for the super-quick fix.
The Status field tracks status for trunk.  "fixed1.8.1.x"/"fixed1.8.0.x"
will be added to Keywords when the checkin is made for Firefox 2.0.0.x/1.5.0.x
Here are the trunk builds to test:
http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/
Attachment #283660 - Flags: approval1.8.1.9?
Attachment #283661 - Flags: approval1.8.0.14?
Comment on attachment 283660 [details] [diff] [review]
Patch rev. 1 (trunk and 1.8)

approved for 1.8.1.10, a=dveditz for release-drivers
Attachment #283660 - Flags: approval1.8.1.10? → approval1.8.1.10+
Comment on attachment 283661 [details] [diff] [review]
Patch rev. 1 (1.8.0 branch)

approved for 1.8.0.14, a=dveditz for release-drivers
Attachment #283661 - Flags: approval1.8.0.14? → approval1.8.0.14+
mozilla/widget/src/gtk2/nsWindow.cpp 	1.145.2.14 	MOZILLA_1_8_BRANCH  

mozilla/widget/src/gtk2/nsWindow.cpp 	1.145.2.1.4.4 	MOZILLA_1_8_0_BRANCH  
Flags: blocking1.8.1.11?
verified fixed 1.8.1.10 using Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.10) Gecko/2007111504 Firefox/2.0.0.10 and the steps to reproduce from this bug.

I'm not noticing any real difference between the last released 1.8.0 FF build (1.5.0.12) and the current nightly, where this is "fixed".
Attached file zipped testcase
Saved original testcase in case server goes away.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: