Open Bug 1011450 Opened 10 years ago Updated 1 year ago

nsIAlertsService.showAlertNotification observer leak on Mac

Categories

(Toolkit :: Alerts Service, defect)

29 Branch
x86
macOS
defect

Tracking

()

UNCONFIRMED

People

(Reporter: kadot, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.137 Safari/537.36

Steps to reproduce:

I use nsIAlertsService in bootstrapped extension.

var alertService = Cc['@mozilla.org/alerts-service;1'].getService(Ci.nsIAlertsService);
var clickObserver = {
    observe: function notificationClickObserved(subject, topic, data) {
        if (topic === 'alertclickcallback') {
    
        }
    }
};
alertService.showAlertNotification(icon, title, text, true, 0, clickObserver);


Actual results:

This code causes object leaks and as a result the extension is not completely unloaded on uninstall/disable. It happens only on Mac OS X (my version is 10.9.3).
Component: Untriaged → XPCOM
Product: Firefox → Core
Is the alert shown? Does it continue to leak even after the alert is dismissed?
Component: XPCOM → General
Flags: needinfo?(kadot)
Product: Core → Toolkit
(In reply to Benjamin Smedberg  [:bsmedberg] from comment #1)
> Is the alert shown?
Yes, the alert is shown.

> Does it continue to leak even after the alert is dismissed?
Yes, it continues to leak even after the alert is dismissed.
Flags: needinfo?(kadot)
wchen, it looks like you made the last substantive changes here ;-) Can you look?
Flags: needinfo?(wchen)
Bulk move to Toolkit::Notifications and Alerts

Filter on notifications-and-alerts-component.
Component: General → Notifications and Alerts
I have not seen the leak by running the code in comment 0. I can take a look again if there are alternate steps that I can use to reproduce the leak.
Flags: needinfo?(wchen)
Severity: normal → S3
Component: Notifications and Alerts → Alerts Service
You need to log in before you can comment on or make changes to this bug.