From de2c24ec440c0a9f618f6c83b34a8bdf67d10fc2 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 1 Jul 2019 20:52:40 +0200 Subject: [PATCH] call-list: allow getting call object by DBus path --- src/mm-call-list.c | 13 +++++++++++++ src/mm-call-list.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/src/mm-call-list.c b/src/mm-call-list.c index e4798d47..e131d20e 100644 --- a/src/mm-call-list.c +++ b/src/mm-call-list.c @@ -135,6 +135,19 @@ cmp_call_by_path (MMBaseCall *call, return g_strcmp0 (mm_base_call_get_path (call), path); } +MMBaseCall * +mm_call_list_get_call (MMCallList *self, + const gchar *call_path) +{ + GList *l; + + l = g_list_find_custom (self->priv->list, + (gpointer)call_path, + (GCompareFunc)cmp_call_by_path); + + return (l ? MM_BASE_CALL (l->data) : NULL); +} + gboolean mm_call_list_delete_call (MMCallList *self, const gchar *call_path, diff --git a/src/mm-call-list.h b/src/mm-call-list.h index 0555f48b..3f85d1d4 100644 --- a/src/mm-call-list.h +++ b/src/mm-call-list.h @@ -64,6 +64,9 @@ guint mm_call_list_get_count (MMCallList *self); void mm_call_list_add_call (MMCallList *self, MMBaseCall *call); +MMBaseCall *mm_call_list_get_call (MMCallList *self, + const gchar *call_path); + gboolean mm_call_list_delete_call (MMCallList *self, const gchar *call_path, GError **error);