Bug 24161

Summary: Крах при получении/отправки запроса аудио/видео звонка при отключенной веб-камере
Product: Sisyphus Reporter: Vladimir Lettiev <crux>
Component: pidginAssignee: Arseny Maslennikov <arseny>
Status: NEW --- QA Contact: qa-sisyphus
Severity: major    
Priority: P3 CC: arseny, ildar
Version: unstable   
Hardware: all   
OS: Linux   

Description Vladimir Lettiev 2010-09-27 14:17:27 MSD
При получении/отправки запроса аудио/видео звонка при отключенной веб-камере происходит крах программы.

$ gdb pidgin
(gdb) run
Starting program: /usr/bin/pidgin 
...
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff4c2a964 in gst_handle_message_error (bus=0xbbbe40, msg=0x1ca4a40, self=0x1aba400) at media/backend-fs2.c:1025
1025	media/backend-fs2.c: Нет такого файла или каталога.
	in media/backend-fs2.c
(gdb) bt
#0  0x00007ffff4c2a964 in gst_handle_message_error (bus=0xbbbe40, msg=0x1ca4a40, self=0x1aba400) at media/backend-fs2.c:1025
#1  0x00007ffff4c2abcd in gst_bus_cb (bus=0xbbbe40, msg=0x1ca4a40, self=0x1aba400) at media/backend-fs2.c:1063
#2  0x00007ffff53f639e in g_closure_invoke () from /usr/lib64/libgobject-2.0.so.0
#3  0x00007ffff540a367 in ?? () from /usr/lib64/libgobject-2.0.so.0
#4  0x00007ffff540b806 in g_signal_emit_valist () from /usr/lib64/libgobject-2.0.so.0
#5  0x00007ffff540bdc3 in g_signal_emit () from /usr/lib64/libgobject-2.0.so.0
#6  0x00007ffff76d3362 in gst_bus_async_signal_func () from /usr/lib64/libgstreamer-0.10.so.0
#7  0x00007ffff76d41f4 in ?? () from /usr/lib64/libgstreamer-0.10.so.0
#8  0x00007ffff4f41222 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#9  0x00007ffff4f45008 in ?? () from /lib64/libglib-2.0.so.0
#10 0x00007ffff4f45515 in g_main_loop_run () from /lib64/libglib-2.0.so.0
#11 0x00007ffff638aa00 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
#12 0x0000000000499ea4 in main (argc=1, argv=0x7fffffffded8) at gtkmain.c:978

$ pidgin -v
Pidgin 2.7.3-alt1 (libpurple 2.7.3)
Comment 1 ildar 2010-12-28 12:15:17 MSK
на новой версии падения повторяются?
Comment 2 Vladimir Lettiev 2010-12-28 15:06:18 MSK
(В ответ на комментарий №1)
> на новой версии падения повторяются?

да, ничего не изменилось.

$ pidgin -v
Pidgin 2.7.8-alt1 (libpurple 2.7.8)
Comment 3 ildar 2010-12-28 15:10:25 MSK
можете сделать, как написано тут: http://developer.pidgin.im/wiki/GetABacktrace ?
Comment 4 Vladimir Lettiev 2010-12-28 23:01:32 MSK
#0  0x00007ffff48d2d77 in gst_handle_message_error (bus=0xc97610, msg=0x1ddd400, self=0x1c4e8c0)
    at media/backend-fs2.c:1021
        priv = 0x1c4e8e0
        element = 0x0
        lastElement = 0x0
        sessions = 0x1cb4488
#1  0x00007ffff48d2fe0 in gst_bus_cb (bus=0xc97610, msg=0x1ddd400, self=0x1c4e8c0)разыменовывание нулевого указателя
    at media/backend-fs2.c:1059
No locals.
...
дальше трейс идёт без отладочной информации.

Здесь видно, что element=NULL, т.о. в строке media/backend-fs2.c:1021 в макрос GST_ELEMENT_PARENT в аргумент попадает NULL, происходит разыменование нулевого указателя