summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2014-06-12 15:28:52 -0500
committerDan Williams <dcbw@redhat.com>2014-07-23 14:26:39 -0500
commit20081816e1389aef48d65f574813faaac17f1930 (patch)
tree4988060b40cfeb659e8afa62e56abd956b0d0f8d
parentb5817dffa096f261bfb01312d8503276d6464191 (diff)
wwan: don't disconnect if nothing to disconnect
Avoid this error: NetworkManager[25181]: <warn> (cdc-wdm1): Failed to connect 'T-Mobile Internet': Connection requested IPv4 but IPv4 is unsuported by the modem. NetworkManager[25181]: <info> (cdc-wdm1): device state change: prepare -> failed (reason 'modem-init-failed') [40 120 28] ** (NetworkManager:25181): CRITICAL **: mm_modem_simple_disconnect: assertion 'MM_IS_MODEM_SIMPLE (self)' failed self->priv->simple_iface is only valid if stage1/prepare actually completes, so don't try to access it if stage1/prepare failed.
-rw-r--r--src/devices/wwan/nm-modem-broadband.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/devices/wwan/nm-modem-broadband.c b/src/devices/wwan/nm-modem-broadband.c
index e019c0428c..4ea477d4ac 100644
--- a/src/devices/wwan/nm-modem-broadband.c
+++ b/src/devices/wwan/nm-modem-broadband.c
@@ -866,11 +866,15 @@ simple_disconnect_ready (MMModemSimple *modem_iface,
}
static void
-disconnect (NMModem *self,
+disconnect (NMModem *modem,
gboolean warn)
{
+ NMModemBroadband *self = NM_MODEM_BROADBAND (modem);
SimpleDisconnectContext *ctx;
+ if (!self->priv->simple_iface)
+ return;
+
ctx = g_slice_new (SimpleDisconnectContext);
ctx->self = g_object_ref (self);