diff --git a/ChangeLog b/ChangeLog index 2ec5cda75..54d255a3d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-09-28 Dan Williams + + * libnm-glib/nm-vpn-connection.c + - (nm_vpn_connection_get_state): try to update state if the current + state is UNKNOWN + 2007-09-27 Dan Williams Patch from Bill Nottingham diff --git a/libnm-glib/nm-vpn-connection.c b/libnm-glib/nm-vpn-connection.c index a1a0b9540..32b13b608 100644 --- a/libnm-glib/nm-vpn-connection.c +++ b/libnm-glib/nm-vpn-connection.c @@ -82,9 +82,17 @@ nm_vpn_connection_get_name (NMVPNConnection *vpn) NMVPNConnectionState nm_vpn_connection_get_state (NMVPNConnection *vpn) { + NMVPNConnectionPrivate *priv; + g_return_val_if_fail (NM_IS_VPN_CONNECTION (vpn), NM_VPN_CONNECTION_STATE_UNKNOWN); - return NM_VPN_CONNECTION_GET_PRIVATE (vpn)->state; + priv = NM_VPN_CONNECTION_GET_PRIVATE (vpn); + if (priv->state == NM_VPN_CONNECTION_STATE_UNKNOWN) { + priv->state = nm_object_get_uint_property (NM_OBJECT (vpn), + NM_DBUS_INTERFACE_VPN_CONNECTION, + "State"); + } + return priv->state; } static void