diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-09-20 22:48:35 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2011-09-26 17:56:24 +0800 |
commit | e13bdb2c17b2915ab29bc74de5a7584aca4fc471 (patch) | |
tree | 6f516c416fed83206c5c729cdcb60a74bbbe641f | |
parent | b6b5e35d96ac4d2bc2cb070d2bb0613992008f5d (diff) | |
download | gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar.gz gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar.bz2 gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar.lz gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar.xz gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.tar.zst gsoc2013-empathy-e13bdb2c17b2915ab29bc74de5a7584aca4fc471.zip |
Don't try to request a Call channel if built without Call support
https://bugzilla.gnome.org/show_bug.cgi?id=659594
-rw-r--r-- | libempathy-gtk/empathy-call-utils.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/libempathy-gtk/empathy-call-utils.c b/libempathy-gtk/empathy-call-utils.c index a30e0808f..399647a62 100644 --- a/libempathy-gtk/empathy-call-utils.c +++ b/libempathy-gtk/empathy-call-utils.c @@ -132,6 +132,7 @@ create_streamed_media_channel_cb (GObject *source, } } +#ifdef HAVE_CALL static void create_call_channel_cb (GObject *source, GAsyncResult *result, @@ -201,6 +202,35 @@ call_new_with_streams (const gchar *contact, g_object_unref (call_req); } +#else /* HAVE_CALL */ + +static void +sm_new_with_streams (const gchar *contact, + TpAccount *account, + gboolean initial_audio, + gboolean initial_video, + gint64 timestamp) +{ + GHashTable *streamed_media_request; + TpAccountChannelRequest *streamed_media_req; + + /* StreamedMedia */ + streamed_media_request = empathy_call_create_streamed_media_request ( + contact, initial_audio, initial_video); + + streamed_media_req = tp_account_channel_request_new (account, + streamed_media_request, + timestamp); + + g_hash_table_unref (streamed_media_request); + + tp_account_channel_request_create_channel_async (streamed_media_req, + EMPATHY_AV_BUS_NAME, NULL, create_streamed_media_channel_cb, NULL); + + g_object_unref (streamed_media_req); +} +#endif /* HAVE_CALL */ + void empathy_call_new_with_streams (const gchar *contact, TpAccount *account, @@ -208,8 +238,13 @@ empathy_call_new_with_streams (const gchar *contact, gboolean initial_video, gint64 timestamp) { +#ifdef HAVE_CALL call_new_with_streams (contact, account, initial_audio, initial_video, timestamp); +#else + sm_new_with_streams (contact, account, initial_audio, initial_video, + timestamp); +#endif } void |