Bug 30594 - Haze claims that ICQ contacts support audio/video
Summary: Haze claims that ICQ contacts support audio/video
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: haze (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL: http://git.Collabora.co.uk/?p=user/ca...
Whiteboard: review+
Keywords: love, patch
Depends on:
Blocks:
 
Reported: 2010-10-04 03:27 UTC by Guillaume Desmottes
Modified: 2010-10-18 06:31 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Guillaume Desmottes 2010-10-04 03:27:53 UTC
Original bug report: https://bugzilla.gnome.org/show_bug.cgi?id=631220

Ubuntu Maverick users seem to see all their ICQ contacts with the webcam icon next to them. They are using haze 0.4.0-1 and purple 1:2.7.3-1ubuntu3.

That's weird because I tried using Lucid (haze 0.4.0 and purple 1:2.6.6-1ubuntu4) and wasn't able to reproduce this issue. Could be a purple bug.
Comment 1 Sebastien Bacher 2010-10-04 03:36:32 UTC
#0  0x0805da6b in media_channel_request_streams (self=<value optimized out>, 
    contact_handle=<value optimized out>, types=0x0, 
    succeeded_cb=0x8060a50 <media_channel_request_succeeded_cb>, 
    failed_cb=0x8060ac0 <media_channel_request_failed_cb>, context=0x9c8fdb0)
    at media-channel.c:1475
#1  0x0805df94 in haze_media_channel_request_initial_streams (chan=0x9c93430, 
    succeeded_cb=0x8060a50 <media_channel_request_succeeded_cb>, 
    failed_cb=0x8060ac0 <media_channel_request_failed_cb>, user_data=0x9c8fdb0)
    at media-channel.c:1553
#2  0x080608a7 in haze_media_manager_requestotron (
    manager=<value optimized out>, request_token=<value optimized out>, 
    request_properties=<value optimized out>, method=METHOD_CREATE)
    at media-manager.c:525
#3  0x004fc7f9 in tp_channel_manager_create_channel (manager=0x9a4cec8, 
    request_token=0x9aeaf30, request_properties=0x9c8fb50)
    at channel-manager.c:683
#4  0x004cb51b in conn_requests_offer_request (self=<value optimized out>, 
    requested_properties=<value optimized out>, method=METHOD_CREATE_CHANNEL, 
    context=0x9aaebe8) at base-connection.c:3185
#5  conn_requests_requestotron_validate_handle (self=<value optimized out>, 
    requested_properties=<value optimized out>, method=METHOD_CREATE_CHANNEL, 
---Type <return> to continue, or q <return> to quit---
    context=0x9aaebe8) at base-connection.c:3119
#6  conn_requests_check_basic_properties (self=<value optimized out>, 
    requested_properties=<value optimized out>, method=METHOD_CREATE_CHANNEL, 
    context=0x9aaebe8) at base-connection.c:3013
#7  conn_requests_requestotron (self=<value optimized out>, 
    requested_properties=<value optimized out>, method=METHOD_CREATE_CHANNEL, 
    context=0x9aaebe8) at base-connection.c:2944
#8  0x0056f29a in tp_svc_connection_interface_requests_create_channel (
    self=0x9aba800, in_Request=0x9c8fb50, context=0x9aaebe8)
    at _gen/tp-svc-connection.c:2591
#9  0x0056378f in _tp_marshal_VOID__BOXED_POINTER (closure=0xbf9cfe94, 
    return_value=0x0, n_param_values=3, param_values=0x9cbf5b0, 
    invocation_hint=0x0, marshal_data=0x56f250) at _gen/signals-marshal.c:496
#10 0x003acddf in invoke_object_method (object=<value optimized out>, 
    object_info=<value optimized out>, method=0x5a08b8, connection=0x9a473c0, 
    message=0x9c8d2c8) at dbus-gobject.c:1724
#11 0x003ad38e in object_registration_message (connection=0x9a473c0, 
    message=0x9c8d2c8, user_data=0x9a87920) at dbus-gobject.c:1944
Comment 2 Sebastien Bacher 2010-10-04 03:38:02 UTC
telepathy-haze crashes this way when trying to call somebody
Comment 3 Omer Akram 2010-10-04 03:41:28 UTC
also reported at: https://bugs.launchpad.net/telepathy-haze/+bug/652944
Comment 4 Omer Akram 2010-10-17 02:29:04 UTC
this issue is tricking people into believing that empathy supports a/v calling for ICQ and bug reports now say "Videocall to ICQ-Contacts doesn't work" ;)
Comment 5 Will Thompson 2010-10-18 03:04:17 UTC
The crash shouldn't be too hard to fix: haze_media_manager_requestotron() should check whether the protocol being used actually supports calls.

To stop ICQ contacts erroneously showing up as callable, haze_media_manager_foreach_channel_class() should also check whether the protocol being used actually supports calls.

Guillaume: you couldn't reproduce this because Haze only has media support if you build against libpurple >= 2.7.0.
Comment 6 Guillaume Desmottes 2010-10-18 04:53:05 UTC
Why nost just instantiate the media manager only if the protocol support calls?

I didn't find any purple API checking if a protocol support calls or not. Just API to check if a contact support them (purple_prpl_get_media_caps ()).
Comment 7 Will Thompson 2010-10-18 05:24:05 UTC
(In reply to comment #6)
> Why nost just instantiate the media manager only if the protocol support calls?

Good point.

> I didn't find any purple API checking if a protocol support calls or not. Just
> API to check if a contact support them (purple_prpl_get_media_caps ()).

I'd probably use PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, initiate_media).
Comment 8 Guillaume Desmottes 2010-10-18 05:41:21 UTC
Here is a branch doing just that:
http://git.Collabora.co.uk/?p=user/cassidy/telepathy-haze;a=shortlog;h=refs/heads/av-30594

Note that I don't have any haze account supporting calls so I haven't been able to test it still works with those.
Comment 9 Will Thompson 2010-10-18 05:59:01 UTC
i can't find an ascii-art hovercraft.
Comment 10 Will Thompson 2010-10-18 06:31:31 UTC
Merged to 0.4 and master; will be in 0.4.1 and 0.5.0 as and when those happen.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.