Bug 62228

Summary: test-file-transfer-channel test segfaults
Product: Telepathy Reporter: Sebastien Bacher <seb128>
Component: tp-glibAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium Keywords: patch
Version: unspecified   
Hardware: Other   
OS: All   
URL: http://cgit.collabora.com/git/user/cassidy/telepathy-glib/log/?h=ft-test-62228
Whiteboard:
i915 platform: i915 features:

Description Sebastien Bacher 2013-03-12 12:45:18 UTC
Trying to build telepathy-glib-0.20.1 on Ubuntu raring, the build fails on a segfault of one of the tests:

/file-transfer-channel/accept/success/unix/localhost: 
Program received signal SIGSEGV, Segmentation fault.
0x0804fa29 in change_state (state=TP_FILE_TRANSFER_STATE_OPEN, self=0x80759f8, 
    reason=<optimized out>) at file-transfer-chan.c:343
343	  self->priv->state = state;
(gdb) bt
#0  0x0804fa29 in change_state (state=TP_FILE_TRANSFER_STATE_OPEN, 
    self=0x80759f8, reason=<optimized out>) at file-transfer-chan.c:343
#1  start_file_transfer (data=data@entry=0x80759f8) at file-transfer-chan.c:358
#2  0xb7ae5047 in g_timeout_dispatch (source=source@entry=0x807a050, 
    callback=0x804f9e0 <start_file_transfer>, user_data=0x80759f8)
    at /build/buildd/glib2.0-2.35.8/./glib/gmain.c:4413
#3  0xb7ae42f3 in g_main_dispatch (context=0x80627b8)
    at /build/buildd/glib2.0-2.35.8/./glib/gmain.c:3054
#4  g_main_context_dispatch (context=context@entry=0x80627b8)
    at /build/buildd/glib2.0-2.35.8/./glib/gmain.c:3630
#5  0xb7ae4690 in g_main_context_iterate (context=0x80627b8, 
    block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>)
    at /build/buildd/glib2.0-2.35.8/./glib/gmain.c:3701
#6  0xb7ae4b6b in g_main_loop_run (loop=0x8069dd8)
    at /build/buildd/glib2.0-2.35.8/./glib/gmain.c:3895
#7  0x0804d711 in test_accept_success (test=0x8073320, data=0x0)
    at file-transfer-channel.c:530
#8  0xb7b08e18 in test_case_run (tc=0x8062048)
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1714
#9  g_test_run_suite_internal (suite=suite@entry=0x8061b60, 
    path=<optimized out>, path@entry=0xb7b5b01e "")
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1767
#10 0xb7b08fae in g_test_run_suite_internal (suite=0x8087838, 
    suite@entry=0x8061b50, path=<optimized out>, path@entry=0xb7b5b01e "")
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1778
#11 0xb7b08fae in g_test_run_suite_internal (suite=0x8087828, 
    suite@entry=0x8061b40, path=<optimized out>, path@entry=0xb7b5b01e "")
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1778
#12 0xb7b08fae in g_test_run_suite_internal (suite=0x8087850, 
    suite@entry=0x8061b20, path=<optimized out>, path@entry=0xb7b5b01e "")
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1778
#13 0xb7b08fae in g_test_run_suite_internal (suite=0x805f910, 
    suite@entry=0x8061b10, path=<optimized out>, path@entry=0xb7b5b01e "")
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1778
#14 0xb7b09329 in g_test_run_suite (suite=0x8061b10)
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1823
#15 0xb7b0937c in g_test_run ()
    at /build/buildd/glib2.0-2.35.8/./glib/gtestutils.c:1324
#16 0x0804cb87 in main (argc=1, argv=0xbffff074) at file-transfer-channel.c:617
(gdb) p state
$1 = TP_FILE_TRANSFER_STATE_OPEN
(gdb) p self->priv
$2 = (TpTestsFileTransferChannelPrivate *) 0xaaaaaaaa
Comment 1 Guillaume Desmottes 2013-03-12 12:52:17 UTC
I can reproduce here.
Comment 3 Guillaume Desmottes 2013-03-12 14:18:35 UTC
Fixed with

commit 9ea571eca7d12648776c7179255711dbdd9aac25
Author: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Date:   Tue Mar 12 15:14:48 2013 +0100

    file-transfer-chan: don't call start_file_transfer() after disposal

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.