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.
This commit is contained in:
Ben Chan
2014-05-31 18:03:30 -07:00
committed by Aleksander Morgado
parent cdb334649d
commit 4213d2fe69

View File

@@ -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,