aboutsummaryrefslogtreecommitdiff
path: root/src/mm-broadband-modem.c
diff options
context:
space:
mode:
authorDan Williams <dan@ioncontrol.co>2025-05-01 07:59:38 -0500
committerDan Williams <dan@ioncontrol.co>2025-05-08 20:08:06 -0500
commit1fa21fcc48b271a8dc2191104e35bf4e95fa2331 (patch)
treecf209fc07098e68c65dca219fee38a826dbcbf1a /src/mm-broadband-modem.c
parentec5104c9a87a440bb791987ffe05e53bf235ae02 (diff)
base-cbm,cbm-list,iface-cbm: remove usage of MMBaseModem
CBM isn't as complicated as SMS, and the CBM class itself doesn't need to be overridden by QMI/MBIM/etc. Now that the log parent and connection binding no longer require MMBaseModem we can flatten the CBM object creation and remove usage of MMBaseModem. Signed-off-by: Dan Williams <dan@ioncontrol.co>
Diffstat (limited to 'src/mm-broadband-modem.c')
-rw-r--r--src/mm-broadband-modem.c30
1 files changed, 12 insertions, 18 deletions
diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c
index 2ccde45e..16d579c7 100644
--- a/src/mm-broadband-modem.c
+++ b/src/mm-broadband-modem.c
@@ -10606,7 +10606,7 @@ cbc_cbm_received (MMPortSerialAt *port,
GMatchInfo *info,
MMBroadbandModem *self)
{
- GError *error = NULL;
+ g_autoptr(GError) error = NULL;
MMCbmPart *part;
guint length;
gchar *pdu;
@@ -10621,15 +10621,19 @@ cbc_cbm_received (MMPortSerialAt *port,
return;
part = mm_cbm_part_new_from_pdu (pdu, self, &error);
- if (part) {
- mm_obj_dbg (self, "correctly parsed PDU");
- mm_iface_modem_cell_broadcast_take_part (MM_IFACE_MODEM_CELL_BROADCAST (self),
- part,
- MM_CBM_STATE_RECEIVED);
- } else {
+ if (!part) {
/* Don't treat the error as critical */
mm_obj_dbg (self, "error parsing PDU: %s", error->message);
- g_error_free (error);
+ } else {
+ mm_obj_dbg (self, "correctly parsed PDU");
+ if (!mm_iface_modem_cell_broadcast_take_part (MM_IFACE_MODEM_CELL_BROADCAST (self),
+ G_OBJECT (self),
+ part,
+ MM_CBM_STATE_RECEIVED,
+ &error)) {
+ /* Don't treat the error as critical */
+ mm_obj_dbg (self, "error adding CBM: %s", error->message);
+ }
}
}
@@ -10686,15 +10690,6 @@ modem_cell_broadcast_cleanup_unsolicited_events (MMIfaceModemCellBroadcast *self
set_cell_broadcast_unsolicited_events_handlers (self, FALSE, callback, user_data);
}
-/*****************************************************************************/
-/* Create CBM (CellBroadcast interface) */
-
-static MMBaseCbm *
-modem_cell_broadcast_create_cbm (MMIfaceModemCellBroadcast *self)
-{
- return mm_base_cbm_new (MM_BASE_MODEM (self), G_OBJECT (self));
-}
-
/***********************************************************************************/
/* Get channels (CellBroadcast interface) */
@@ -14507,7 +14502,6 @@ iface_modem_cell_broadcast_init (MMIfaceModemCellBroadcastInterface *iface)
iface->cleanup_unsolicited_events_finish = modem_cell_broadcast_setup_cleanup_unsolicited_events_finish;
iface->set_channels = modem_cell_broadcast_set_channels;
iface->set_channels_finish = modem_cell_broadcast_set_channels_finish;
- iface->create_cbm = modem_cell_broadcast_create_cbm;
}
static void