Blob Blame History Raw
From ba48be3a344b64dfb808cb6f3e545829d9884bee Mon Sep 17 00:00:00 2001
From: Dan Winship <danw@gnome.org>
Date: Fri, 5 Oct 2012 16:41:02 -0400
Subject: [PATCH 1/2] core: fix NMDevice::state-changed emission of ACTIVATED
 (bgo #685581)

NMPolicy was calling nm_device_state_changed() from inside its
NMDevice::state-changed handler, which caused the D-Bus signal to get
lost. Use nm_device_queue_state() instead.
---
 src/nm-policy.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/nm-policy.c b/src/nm-policy.c
index 92f771d..6722fb6 100644
--- a/src/nm-policy.c
+++ b/src/nm-policy.c
@@ -1453,11 +1453,11 @@ device_state_changed (NMDevice *device,
 
 			/* Activate secondary (VPN) connections */
 			if (!activate_secondary_connections (policy, connection, device))
-				nm_device_state_changed (device, NM_DEVICE_STATE_FAILED,
-				                                 NM_DEVICE_STATE_REASON_SECONDARY_CONNECTION_FAILED);
+				nm_device_queue_state (device, NM_DEVICE_STATE_FAILED,
+				                       NM_DEVICE_STATE_REASON_SECONDARY_CONNECTION_FAILED);
 		} else
-			nm_device_state_changed (device, NM_DEVICE_STATE_ACTIVATED,
-			                                 NM_DEVICE_STATE_REASON_NONE);
+			nm_device_queue_state (device, NM_DEVICE_STATE_ACTIVATED,
+			                       NM_DEVICE_STATE_REASON_NONE);
 		break;
 
 	default:
-- 
1.7.11.4