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

Note You need to log in before you can comment on or make changes to this bug.
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.