Bug 20764 - Crash if media channel closes before Google answers HTTP request.
Summary: Crash if media channel closes before Google answers HTTP request.
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: gabble (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-20 03:50 UTC by Will Thompson
Modified: 2009-04-08 10:56 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Will Thompson 2009-03-20 03:50:49 UTC
The relevant chunk of backtrace follows. I'm pretty sure this is because GabbleJingleContents that are still alive when the GabbleJingleSession dies don't emit 'removed'; the relay session code listens for that signal to decide whether to ignore the HTTP response.

#4  0x411a9294 in IA__g_return_if_fail_warning (log_domain=<value optimized
out>, pretty_function=<value optimized out>, expression=<value optimized out>)
at gmessages.c:538
#5  0x412a54fc in IA__g_object_get (_object=<value optimized out>,
first_property_name=Could not find the frame base for "IA__g_object_get".
#6  0x00070b08 in update_direction (stream=0xfe8b8, c=0xe60e0) at
media-stream.c:1588
#7  0x00073098 in gabble_media_stream_constructor (type=<value optimized out>,
n_props=<value optimized out>, props=0x104a90) at media-stream.c:298
#8  0x412a7374 in IA__g_object_newv (object_type=<value optimized out>,
n_parameters=<value optimized out>, parameters=<value optimized out>) at
gobject.c:1211
#9  0x412a7f8c in IA__g_object_new_valist (object_type=<value optimized out>,
first_property_name=<value optimized out>, var_args=<value optimized out>) at
gobject.c:1315
#10 0x412a80b4 in IA__g_object_new (object_type=<value optimized out>,
first_property_name=Could not find the frame base for "IA__g_object_new".
#11 0x00071be0 in gabble_media_stream_new (object_path=0x103168
"/org/freedesktop/Telepathy/Connection/gabble/jabber/apptest2_40gmail_2ecom_2fTelepathy/MediaChannel1/MediaStream1",
content=0xe60e0, name=0x102368 "gtalk", id=1, nat_traversal=0x103568
"gtalk-p2p", relay_info=0xfd880) at media-stream.c:176
#12 0x0006c6e0 in construct_stream (chan=0xe6150, c=0xe60e0, name=0x102368
"gtalk", nat_traversal=0x103568 "gtalk-p2p", relays=0xfd880) at
media-channel.c:2469
#13 0x0006ca4c in google_relay_session_cb (relays=0xbee29650, user_data=<value
optimized out>) at media-channel.c:2586
#14 0x0001ee0c in relay_session_data_call (p=<value optimized out>) at
jingle-factory.c:914
#15 0x0001eec8 in on_http_response (soup=<value optimized out>, msg=0x2,
user_data=<value optimized out>) at jingle-factory.c:1072
#16 0x42d94854 in ?? () from /usr/lib/libsoup-2.4.so.1
Comment 1 Will Thompson 2009-03-20 06:36:53 UTC
Fixed in Git:

commit bcf438d43d1e2625e9c24d2a15cc91c31919a6ce
Author: Will Thompson <will.thompson@collabora.co.uk>
Date:   Fri Mar 20 15:11:53 2009 +0200

    Ignore Google relay responses when session dies
    
    This fixes fd.o #20764.
    
    Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Comment 2 Will Thompson 2009-04-08 10:56:31 UTC
Fixed in 0.7.24.


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.