mozilla-libnotify.patch
changeset 438 7d934b2f5014
parent 435 df9c4a6e84f8
child 439 7704a021055f
--- a/mozilla-libnotify.patch	Wed Apr 25 13:47:56 2012 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-# HG changeset patch
-# User Wolfgang Rosenauer <wr@rosenauer.org>
-# Parent c684863b1eb3bcae92ef24bc2ac511985b1ad7e4
-Bug 737646 - no biff notification if notification-daemon not running
-
-diff --git a/toolkit/system/gnome/nsAlertsIconListener.cpp b/toolkit/system/gnome/nsAlertsIconListener.cpp
---- a/toolkit/system/gnome/nsAlertsIconListener.cpp
-+++ b/toolkit/system/gnome/nsAlertsIconListener.cpp
-@@ -47,16 +47,17 @@
- #include <gdk/gdk.h>
- 
- // Compatibility macro for <libnotify-0.7
- #ifndef NOTIFY_CHECK_VERSION
- #define NOTIFY_CHECK_VERSION(x,y,z) 0
- #endif
- 
- static bool gHasActions = false;
-+static bool gHasCaps = false;
- 
- static void notify_action_cb(NotifyNotification *notification,
-                              gchar *action, gpointer user_data)
- {
-   nsAlertsIconListener* alert = static_cast<nsAlertsIconListener*> (user_data);
-   alert->SendCallback();
- }
- 
-@@ -338,27 +339,34 @@ nsAlertsIconListener::InitAlertAsync(con
-       appShortName.AssignLiteral("Mozilla");
-     }
- 
-     if (!notify_init(appShortName.get()))
-       return NS_ERROR_FAILURE;
- 
-     GList *server_caps = notify_get_server_caps();
-     if (server_caps) {
-+      gHasCaps = true;
-       for (GList* cap = server_caps; cap != NULL; cap = cap->next) {
-         if (!strcmp((char*) cap->data, "actions")) {
-           gHasActions = true;
-           break;
-         }
-       }
-       g_list_foreach(server_caps, (GFunc)g_free, NULL);
-       g_list_free(server_caps);
-     }
-   }
- 
-+  if (!gHasCaps) {
-+    // if notify_get_server_caps() failed above we need to assume
-+    // there is no notification-server to display anything
-+    return NS_ERROR_FAILURE;
-+  }
-+
-   if (!gHasActions && aAlertTextClickable)
-     return NS_ERROR_FAILURE; // No good, fallback to XUL
- 
-   nsCOMPtr<nsIObserverService> obsServ =
-       do_GetService("@mozilla.org/observer-service;1");
-   if (obsServ)
-     obsServ->AddObserver(this, "quit-application", true);
-