[xulrunner] Update for NetworkManager 0.9 connection states

Christopher Aillon caillon at fedoraproject.org
Mon Apr 4 08:19:46 UTC 2011


commit c08abc5f1d370c82f21b899b60cd81954bd87525
Author: Christopher Aillon <caillon at redhat.com>
Date:   Sun Apr 3 23:57:31 2011 -0700

    Update for NetworkManager 0.9 connection states
    
    https://bugzilla.mozilla.org/show_bug.cgi?id=639959

 xulrunner-2.0-NetworkManager09.patch |   51 ++++++++++++++++++++++++++++++++++
 xulrunner.spec                       |    2 +
 2 files changed, 53 insertions(+), 0 deletions(-)
---
diff --git a/xulrunner-2.0-NetworkManager09.patch b/xulrunner-2.0-NetworkManager09.patch
new file mode 100644
index 0000000..317a1b4
--- /dev/null
+++ b/xulrunner-2.0-NetworkManager09.patch
@@ -0,0 +1,51 @@
+https://bugzilla.mozilla.org/show_bug.cgi?id=639959
+
+--- source/toolkit/system/dbus/nsNetworkManagerListener.cpp.foo	2011-03-08 14:26:28.167074923 -0600
++++ source/toolkit/system/dbus/nsNetworkManagerListener.cpp	2011-03-08 14:30:54.260748294 -0600
+@@ -51,15 +51,13 @@
+ #define NM_DBUS_SERVICE                 "org.freedesktop.NetworkManager"
+ #define NM_DBUS_PATH                            "/org/freedesktop/NetworkManager"
+ #define NM_DBUS_INTERFACE                       "org.freedesktop.NetworkManager"
+-#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange"
+-typedef enum NMState
+-{
+-        NM_STATE_UNKNOWN = 0,
+-        NM_STATE_ASLEEP,
+-        NM_STATE_CONNECTING,
+-        NM_STATE_CONNECTED,
+-        NM_STATE_DISCONNECTED
+-} NMState;
++#define NM_DBUS_SIGNAL_STATE_CHANGE             "StateChange"  /* Deprecated in 0.7.x */
++#define NM_DBUS_SIGNAL_STATE_CHANGED            "StateChanged"
++
++#define NM_STATE_CONNECTED_OLD    3
++#define NM_STATE_CONNECTED_LOCAL  50
++#define NM_STATE_CONNECTED_SITE   60
++#define NM_STATE_CONNECTED_GLOBAL 70
+ 
+ nsNetworkManagerListener::nsNetworkManagerListener() :
+     mLinkUp(PR_TRUE), mNetworkManagerActive(PR_FALSE),
+@@ -174,7 +172,9 @@
+ PRBool
+ nsNetworkManagerListener::HandleMessage(DBusMessage* message) {
+   if (dbus_message_is_signal(message, NM_DBUS_INTERFACE,
+-                             NM_DBUS_SIGNAL_STATE_CHANGE)) {
++                             NM_DBUS_SIGNAL_STATE_CHANGE) ||
++      dbus_message_is_signal(message, NM_DBUS_INTERFACE,
++                             NM_DBUS_SIGNAL_STATE_CHANGED)) {
+     UpdateNetworkStatus(message);
+     return PR_TRUE;
+   }
+@@ -191,7 +191,10 @@
+   mNetworkManagerActive = PR_TRUE;
+   
+   PRBool wasUp = mLinkUp;
+-  mLinkUp = result == NM_STATE_CONNECTED;
++  mLinkUp = (result == NM_STATE_CONNECTED_OLD) ||
++            (result == NM_STATE_CONNECTED_LOCAL) ||
++            (result == NM_STATE_CONNECTED_SITE) ||
++            (result == NM_STATE_CONNECTED_GLOBAL);
+   if (wasUp == mLinkUp)
+     return;
+ 
+
diff --git a/xulrunner.spec b/xulrunner.spec
index 1e5fc3a..02b9d73 100644
--- a/xulrunner.spec
+++ b/xulrunner.spec
@@ -91,6 +91,7 @@ Patch31:        xulrunner-2.0-baddevice.patch
 Patch32:        firefox-4.0-moz-app-launcher.patch
 Patch33:        firefox-4.0-gnome3.patch
 Patch34:        xulrunner-2.0-network-link-service.patch
+Patch35:        xulrunner-2.0-NetworkManager09.patch
 
 # ---------------------------------------------------
 
@@ -196,6 +197,7 @@ sed -e 's/__RPM_VERSION_INTERNAL__/%{gecko_dir_ver}/' %{P:%%PATCH0} \
 %patch32 -p1 -b .moz-app-launcher
 %patch33 -p1 -b .gnome3
 %patch34 -p1 -b .network-link-service
+%patch35 -p1 -b .NetworkManager09
 
 %{__rm} -f .mozconfig
 %{__cp} %{SOURCE10} .mozconfig


More information about the scm-commits mailing list