From 619389ed201632d2d8a757f2068c99e33a50fb35 Mon Sep 17 00:00:00 2001 From: Giovanni Campagna Date: Sat, 12 Oct 2013 18:50:49 +0200 Subject: [PATCH] NotificationDaemon: fix icons for notifications without an app NotificationDaemon doesn't pass a gicon to the Notification constructor, because it calls .update() immediately after, so messageTray.js calls into Source.createIcon(), which returns null and crashes. Instead, shortcut the Notification constructor by skipping .update() completely. https://bugzilla.gnome.org/show_bug.cgi?id=709998 --- js/ui/messageTray.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/js/ui/messageTray.js b/js/ui/messageTray.js index d8d1e36a3..d75a5a94d 100644 --- a/js/ui/messageTray.js +++ b/js/ui/messageTray.js @@ -438,7 +438,12 @@ const Notification = new Lang.Class({ this._bannerLabel = this._bannerUrlHighlighter.actor; this._bannerBox.add_actor(this._bannerLabel); - this.update(title, banner, params); + // If called with only one argument we assume the caller + // will call .update() later on. This is the case of + // NotificationDaemon, which wants to use the same code + // for new and updated notifications + if (arguments.length != 1) + this.update(title, banner, params); }, // update: