From 256f901893e87564e3064998f416a7cca6c8aebc Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Fri, 8 Jul 2005 02:38:46 +0000 Subject: 2005-07-07 Dan Williams * Some minor fixups Patch from Derek Atkins * src/nm-dbus-net.c: - (nm_dbus_get_ap_from_object_path): differentiate similar ESSIDs 2005-06-27 Dan Williams Patch from Robert Love: * src/nm-dbus-nm.c - (nm_dbus_nm_set_wireless_enabled): fix bug that casued wireless devies not to be re-enabled git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/branches/FC4_BRANCH@794 4912f4e0-d625-0410-9fb7-b9a5a253dbdc --- ChangeLog | 15 +++++++++++++++ libnm_glib/libnm_glib.c | 2 +- panel-applet/NMWirelessApplet.c | 2 +- src/NetworkManagerDevice.c | 2 ++ src/nm-dbus-net.c | 15 +++++++++++---- src/nm-dbus-nm.c | 16 ++++++++++------ 6 files changed, 40 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 95b56dbbba..4a8412aaad 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,18 @@ +2005-07-07 Dan Williams + + * Some minor fixups + + Patch from Derek Atkins + * src/nm-dbus-net.c: + - (nm_dbus_get_ap_from_object_path): differentiate similar ESSIDs + +2005-06-27 Dan Williams + + Patch from Robert Love: + * src/nm-dbus-nm.c + - (nm_dbus_nm_set_wireless_enabled): fix bug that casued wireless + devies not to be re-enabled + 2005-06-17 Dan Williams * panel-applet/NMWirelessAppletDbus.c diff --git a/libnm_glib/libnm_glib.c b/libnm_glib/libnm_glib.c index 9baf517e9f..3cbcaf6ba7 100644 --- a/libnm_glib/libnm_glib.c +++ b/libnm_glib/libnm_glib.c @@ -248,7 +248,7 @@ static DBusHandlerResult libnm_glib_dbus_filter (DBusConnection *connection, DBu } } } -#elif ((DBUS_VERSION_MAJOR == 0) && ((DBUS_VERSION_MINOR == 30) || (DBUS_VERSION_MINOR == 31) || (DBUS_VERSION_MINOR == 32) || (DBUS_VERSION_MINOR == 33))) +#elif ((DBUS_VERSION_MAJOR == 0) && ((DBUS_VERSION_MINOR == 30) || (DBUS_VERSION_MINOR == 31) || (DBUS_VERSION_MINOR == 32) || (DBUS_VERSION_MINOR == 33) || (DBUS_VERSION_MINOR == 34))) else if (dbus_message_is_signal (message, DBUS_INTERFACE_DBUS, "NameOwnerChanged")) { /* New signal for dbus 0.23... */ diff --git a/panel-applet/NMWirelessApplet.c b/panel-applet/NMWirelessApplet.c index c586a41c2d..ede6d33636 100644 --- a/panel-applet/NMWirelessApplet.c +++ b/panel-applet/NMWirelessApplet.c @@ -128,7 +128,7 @@ void nmwa_about_cb (NMWirelessApplet *applet) "Colin Walters ", "Dan Williams ", "\nAnd others, including:\n", - "Bill Moss", + "Bill Moss ", "Tom Parker", "j@bootlab.org", "Peter Jones ", diff --git a/src/NetworkManagerDevice.c b/src/NetworkManagerDevice.c index 2a4bdbfdd9..cd968c15f5 100644 --- a/src/NetworkManagerDevice.c +++ b/src/NetworkManagerDevice.c @@ -2537,6 +2537,8 @@ try_connect: } else { + gboolean adhoc = (nm_ap_get_mode (best_ap) == NETWORK_MODE_ADHOC); + if (nm_device_activation_handle_cancel (dev)) goto out; diff --git a/src/nm-dbus-net.c b/src/nm-dbus-net.c index 623b50f8fc..ba798a5fc4 100644 --- a/src/nm-dbus-net.c +++ b/src/nm-dbus-net.c @@ -52,14 +52,21 @@ static NMAccessPoint *nm_dbus_get_ap_from_object_path (const char *path, NMDevic while ((ap = nm_ap_list_iter_next (iter))) { + int len; + snprintf (compare_path, 100, "%s/%s/Networks/%s", NM_DBUS_PATH_DEVICES, nm_device_get_iface (dev), nm_ap_get_essid (ap)); escaped_compare_path = nm_dbus_escape_object_path (compare_path); - if (strncmp (path, escaped_compare_path, - strlen (escaped_compare_path)) == 0) + + len = strlen(escaped_compare_path); + if (strncmp (path, escaped_compare_path, len) == 0) { - g_free (escaped_compare_path); - break; + /* Differentiate between 'foo' and 'foo-a' */ + if (path[len] == '\0' || path[len] == '/') + { + g_free (escaped_compare_path); + break; + } } g_free (escaped_compare_path); } diff --git a/src/nm-dbus-nm.c b/src/nm-dbus-nm.c index 335d247b54..5854bf2df2 100644 --- a/src/nm-dbus-nm.c +++ b/src/nm-dbus-nm.c @@ -443,17 +443,20 @@ static DBusMessage *nm_dbus_nm_set_wireless_enabled (DBusConnection *connection, { gboolean enabled = FALSE; DBusError err; + NMData *app_data; g_return_val_if_fail (data && data->data && connection && message, NULL); dbus_error_init (&err); - if (dbus_message_get_args (message, &err, DBUS_TYPE_BOOLEAN, &enabled, DBUS_TYPE_INVALID)) + if (!dbus_message_get_args (message, &err, DBUS_TYPE_BOOLEAN, &enabled, DBUS_TYPE_INVALID)) + return NULL; + + app_data = data->data; + app_data->wireless_enabled = enabled; + + if (!enabled) { GSList *elt; - NMData *app_data; - - app_data = data->data; - app_data->wireless_enabled = enabled; /* Physically down all wireless devices */ nm_lock_mutex (app_data->dev_list_mutex, __FUNCTION__); @@ -467,9 +470,10 @@ static DBusMessage *nm_dbus_nm_set_wireless_enabled (DBusConnection *connection, } } nm_unlock_mutex (app_data->dev_list_mutex, __FUNCTION__); - nm_policy_schedule_state_update (app_data); } + nm_policy_schedule_state_update (data->data); + return NULL; } -- cgit v1.2.1