diff --git a/toolkit/components/alerts/test/test_alerts.html b/toolkit/components/alerts/test/test_alerts.html index 3a034f42785c68a674e32b791b6bc1a54a30dff8..ebbfe7f2ed1d889a7f3767817da0242e348cc33a 100644 --- a/toolkit/components/alerts/test/test_alerts.html +++ b/toolkit/components/alerts/test/test_alerts.html @@ -33,6 +33,8 @@ const Ci = Components.interfaces; try { var notifier = Cc["@mozilla.org/alerts-service;1"]. getService(Ci.nsIAlertsService); + notifier.showAlertNotification(null, "Notification test", "Surprise! I'm here to test a notification without observer!", + false, "foobarcookie", null); notifier.showAlertNotification(null, "Notification test", "Surprise! I'm here to test notifications!", false, "foobarcookie", observer); diff --git a/toolkit/system/gnome/nsAlertsIconListener.cpp b/toolkit/system/gnome/nsAlertsIconListener.cpp index d67b6c995699d4c11ebec5d9f3580cdc45931ecb..8c5e0b973485cd78f97045eca46f6efbe4a4f17e 100644 --- a/toolkit/system/gnome/nsAlertsIconListener.cpp +++ b/toolkit/system/gnome/nsAlertsIconListener.cpp @@ -250,13 +250,17 @@ nsAlertsIconListener::StartRequest(const nsAString & aImageUrl) void nsAlertsIconListener::SendCallback() { - mAlertListener->Observe(NULL, "alertclickcallback", mAlertCookie.get()); + if (mAlertListener) { + mAlertListener->Observe(NULL, "alertclickcallback", mAlertCookie.get()); + } } void nsAlertsIconListener::SendClosed() { - mAlertListener->Observe(NULL, "alertfinished", mAlertCookie.get()); + if (mAlertListener) { + mAlertListener->Observe(NULL, "alertfinished", mAlertCookie.get()); + } } nsresult