diff options
Diffstat (limited to 'src/message-waiting.c')
-rw-r--r-- | src/message-waiting.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/message-waiting.c b/src/message-waiting.c index d8bfe34b..0e376b60 100644 --- a/src/message-waiting.c +++ b/src/message-waiting.c @@ -926,11 +926,18 @@ static void message_waiting_unregister(struct ofono_atom *atom) void ofono_message_waiting_register(struct ofono_message_waiting *mw) { - DBusConnection *conn = ofono_dbus_get_connection(); - const char *path = __ofono_atom_get_path(mw->atom); - struct ofono_modem *modem = __ofono_atom_get_modem(mw->atom); + DBusConnection *conn; + const char *path; + struct ofono_modem *modem; struct ofono_atom *sim_atom; + if (mw == NULL) + return; + + conn = ofono_dbus_get_connection(); + modem = __ofono_atom_get_modem(mw->atom); + path = __ofono_atom_get_path(mw->atom); + if (!g_dbus_register_interface(conn, path, OFONO_MESSAGE_WAITING_INTERFACE, message_waiting_methods, |