summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Lundblad <malu@pidgin.im>2009-11-09 19:27:38 +0000
committerMarcus Lundblad <malu@pidgin.im>2009-11-09 19:27:38 +0000
commit5872d785f9735d7e62b5084e93fe03f8e7ed1ebf (patch)
treefcd06e4ac323634c86fa7a93765b5eb2701196bb
parent2d61f514e340dd64d17da2e226961914d5f543d3 (diff)
downloadpidgin-5872d785f9735d7e62b5084e93fe03f8e7ed1ebf.tar.gz
Use Google mode also for video when on a Google connection and the receiver
has the right caps. Only prefer Google Jingle over standard Jingle when we have received a Google relay token (I'm not sure if it could ever happen that there won't be one when on a Google connection, and we did the google:jingleinfo query...)
-rw-r--r--libpurple/protocols/jabber/jabber.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libpurple/protocols/jabber/jabber.c b/libpurple/protocols/jabber/jabber.c
index d23e031ad8..115fb9c6e0 100644
--- a/libpurple/protocols/jabber/jabber.c
+++ b/libpurple/protocols/jabber/jabber.c
@@ -3032,10 +3032,12 @@ jabber_initiate_media(PurpleAccount *account, const char *who,
/* if we are on a Google Talk connection and the remote supports
Google Jingle, we will go with that */
- if ((js->googletalk ||
+ if (((js->googletalk && js->google_relay_token) ||
!jabber_resource_has_capability(jbr, JINGLE_APP_RTP_SUPPORT_AUDIO))
- && type & PURPLE_MEDIA_AUDIO && jabber_resource_has_capability(jbr,
- GOOGLE_VOICE_CAP))
+ && (((type & PURPLE_MEDIA_AUDIO) &&
+ jabber_resource_has_capability(jbr, GOOGLE_VOICE_CAP))
+ || ((type & PURPLE_MEDIA_VIDEO) &&
+ jabber_resource_has_capability(jbr, GOOGLE_VIDEO_CAP))))
return jabber_google_session_initiate(js, who, type);
else
return jingle_rtp_initiate_media(js, who, type);