From 4213d2fe69ed66b2541f8245ad4e2f2d1a3ea61f Mon Sep 17 00:00:00 2001 From: Ben Chan Date: Sat, 31 May 2014 18:03:30 -0700 Subject: broadband-modem: report an error when enabling a modem in FAILED state If the initialization of the Modem3gpp / ModemCdma interface fails, the modem transitions to the FAILED state. But since the Modem interface is already initialized and exported over DBus, it is possible to invoke the Enable method on the Modem interface. This patch changes MMBroadbandModem to report an error if one tries to enable the modem in the FAILED state instead of raising an assertion. --- src/mm-broadband-modem.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index 0747ebe9..9386f0ba 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -8731,11 +8731,11 @@ enable (MMBaseModem *self, /* Check state before launching modem enabling */ switch (MM_BROADBAND_MODEM (self)->priv->modem_state) { case MM_MODEM_STATE_UNKNOWN: - case MM_MODEM_STATE_FAILED: - /* We should never have a UNKNOWN|FAILED->ENABLED transition */ + /* We should never have a UNKNOWN->ENABLED transition */ g_assert_not_reached (); break; + case MM_MODEM_STATE_FAILED: case MM_MODEM_STATE_INITIALIZING: g_simple_async_result_set_error (result, MM_CORE_ERROR, -- cgit v1.2.3-70-g09d2