сегфолты при получении офлайн сообщения

Issue #99 new
Former user created an issue

Original issue 99 created by linuxover on 2012-06-28T08:53:18.000Z:

при попытке запустить (в первый раз) получаю сегфлот:

Core was generated by `pidgin'.
Program terminated with signal 6, Aborted.
# 0 0x00007f5c86908475 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
# 0 0x00007f5c86908475 in raise () from /lib/x86_64-linux-gnu/libc.so.6
# 1 0x00007f5c8690b6f0 in abort () from /lib/x86_64-linux-gnu/libc.so.6
# 2 0x00007f5c8a1489bd in sighandler (sig=<optimized out>)
at /build/pidgin-LhQG_t/pidgin-2.10.4/./pidgin/gtkmain.c:179
# 3 sighandler (sig=11)
at /build/pidgin-LhQG_t/pidgin-2.10.4/./pidgin/gtkmain.c:162
# 4 <signal handler called>
# 5 0x00007f5c869ed4cf in ?? () from /lib/x86_64-linux-gnu/libc.so.6
# 6 0x00007f5c87497820 in g_strdup ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
# 7 0x00007f5c7cfb40a8 in mrim_receive_offline_message (mrim=0x7f5c8aa05f40,
message=0x7f5c8bc37840 "From: r.nikolaev@corp.mail.ru\r\nDate: Tue, 26 Jun
2012 14:40:26 +0400\r\nMIME-Version: 1.0\r\nContent-Type: multipart/alternative; boundary=1340707226I6686968041340707226M834385138\r\nX-MRIM-Version:
1.16\r\nX"...) at message.c:277
# 8 0x00007f5c7cfa9f14 in mrim_input_cb (data=0x7f5c8acf74b0, source=10,
cond=PURPLE_INPUT_READ) at mrim.c:446
# 9 0x00007f5c8a13075d in pidgin_io_invoke (source=<optimized out>,
condition=<optimized out>, data=0x7f5c8bbcee60)
at /build/pidgin-LhQG_t/pidgin-2.10.4/./pidgin/gtkeventloop.c:73
# 10 0x00007f5c8747c205 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
# 11 0x00007f5c8747c538 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
# 12 0x00007f5c8747c932 in g_main_loop_run ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
# 13 0x00007f5c886f5a77 in gtk_main ()
from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
# 14 0x00007f5c8a0f5379 in main (argc=1, argv=0x7fffa2bbf468)
at /build/pidgin-LhQG_t/pidgin-2.10.4/./pidgin/gtkmain.c:934

git pull - сегодняшний

Comments (13)

  1. Николай Антонов

    Comment 1 originally posted by ostinru on 2012-06-28T15:56:25.000Z:

    Спасибо за багрепорт. Постараюсь за выходные поглядеть что не так.

    PS: я бы не светил email (см пункт #&nbsp;7 ....) ;-)

  2. Janus Kobain

    Comment 2 originally posted by plaque_fcc on 2012-06-28T20:34:15.000Z:

    А чего в message.c:277 смотреть?

    charset = g_strdup((gchar*)(g_strrstr(value, "charset=") + strlen("charset=")));

    Там и так всё плохо. ;D

    Ну, видимо, и пришло время переписывать парсер оффлайн-сообщений заново. Нет?

    Впрочем, «X-MRIM-Version: 1.16» смущает.

    За багрепорт — спасибо! Будем думать.

  3. Former user Account Deleted

    Comment 3 originally posted by gto6ka on 2013-11-08T16:04:04.000Z:

    Ребята, та же проблема внезапно стал сефолтиться пиджин: debug output: (19:45:37) mrim-prpl: [mrim_fetch_avatar] Fetch avatar for buddy '-@mail.ru' (19:45:37) mrim-prpl: [mrim_input_cb] (19:45:37) mrim-prpl: [mrim_package_read] seq = 1, type = 0x1015 len = 61 (19:45:37) mrim-prpl: [mrim_input_cb] MRIM_CS_USER_INFO (19:45:37) mrim-prpl: [mrim_input_cb] User info: 'MESSAGES.TOTAL' = '5701' (19:45:37) mrim-prpl: [mrim_input_cb] User info: 'MESSAGES.UNREAD' = '4826' (19:45:37) mrim-prpl: [mrim_package_send] Package sent: type is 0x1024, seq is 2 (19:45:37) mrim-prpl: [mrim_input_cb] User nick is '-' (19:45:37) mrim-prpl: [mrim_input_cb] User microblog is '(null)' (19:45:37) mrim-prpl: [mrim_input_cb] (19:45:37) mrim-prpl: [mrim_package_read] seq = 0, type = 0x101d len = 694 (19:45:37) mrim-prpl: [mrim_input_cb] MRIM_CS_OFFLINE_MESSAGE_ACK (19:45:37) mrim-prpl: [mrim_receive_offline_message] Reading offline message (19:45:37) mrim-prpl: [mrim_receive_offline_message] Unparsed offline message, gonna parse header: (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'From' == '-@mail.ru' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'Date' == 'Fri, 08 Nov 2013 11:39:11 +0400' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'MIME-Version' == '1.0' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'Content-Type' == 'multipart/alternative; boundary=1383925537C12139032831383925537E901895812' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'X-MRIM-Version' == '1.16' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'X-MRIM-Flags' == '00100008' (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'X-MRIM-Arch-Id' == '0000000000000000' (19:45:37) mrim-prpl: [mrim_receive_offline_message] Boundary:--1383925537C12139032831383925537E901895812

    (19:45:37) mrim-prpl: [mrim_receive_offline_message] 'Content-Type' == 'application/x-mrim-auth-req' dns[26877]: Oops, father has gone, wait for me, wait...! Ошибка сегментирования

    strace: munmap(0x7fa8a642d000, 4096) = 0 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1!\0\0\0F\4\0\0\200\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 144}, {"''\0\0\30\0\0\0-@mail.ru"..., 33}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 177 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1\4\0\0\0G\4\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"\4)\0\0", 4}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 140 open("/usr/share/pixmaps/pidgin/protocols/16/mrim.png", O_RDONLY) = 18 fstat(18, {st_mode=S_IFREG|0644, st_size=652, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa8a642d000 read(18, "\211PNG\r\n\32\n\0\0\0\rIHDR\0\0\0\20\0\0\0\20\10\6\0\0\0\37\363\377"..., 4096) = 652 read(18, "", 4096) = 0 lseek(18, 0, SEEK_SET) = 0 read(18, "\211PNG\r\n\32\n\0\0\0\rIHDR\0\0\0\20\0\0\0\20\10\6\0\0\0\37\363\377"..., 4096) = 652 close(18) = 0 munmap(0x7fa8a642d000, 4096) = 0 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1\4\0\0\0H\4\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"\4)\0\0", 4}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 140 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1\4\0\0\0I\4\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"\4)\0\0", 4}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 140 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1\4\0\0\0J\4\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"\4)\0\0", 4}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 140 sendmsg(7, {msg_name(0)=NULL, msg_iov(2)=[{"l\4\1\1\4\0\0\0K\4\0\0w\0\0\0\1\1o\0\36\0\0\0/im/pidg"..., 136}, {"\4)\0\0", 4}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 140 open("/usr/share/pixmaps/pidgin/protocols/16/mrim.png", O_RDONLY) = 18 fstat(18, {st_mode=S_IFREG|0644, st_size=652, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa8a642d000 read(18, "\211PNG\r\n\32\n\0\0\0\rIHDR\0\0\0\20\0\0\0\20\10\6\0\0\0\37\363\377"..., 4096) = 652 read(18, "", 4096) = 0 lseek(18, 0, SEEK_SET) = 0 read(18, "\211PNG\r\n\32\n\0\0\0\rIHDR\0\0\0\20\0\0\0\20\10\6\0\0\0\37\363\377"..., 4096) = 652 close(18) = 0 munmap(0x7fa8a642d000, 4096) = 0 write(5, "\1\0\0\0\0\0\0\0", 8) = 8 poll([{fd=6, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=6, revents=POLLIN|POLLOUT}]) recvfrom(6, "\34\0\2550P\1\2B\1\0\0\267\237\214\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096, 0, NULL, NULL) = 64 writev(6, [{"\f\377\4\0g\0\2@\0\377\0\0\0\0\0\22\0\7\0h\0`\2N\1\0\0\6\0\0\0"..., 208}, {NULL, 0}, {"", 0}], 3) = 208 recvfrom(6, 0x7fa8a698c4f4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=5, events=POLLIN}, {fd=6, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}, {fd=14, events=POLLIN}, {fd=13, events=POLLIN}, {fd=16, events=POLLIN}, {fd=4, events=POLLIN}, {fd=15, events=POLLIN}], 9, 0) = 2 ([{fd=5, revents=POLLIN}, {fd=15, revents=POLLIN}]) recvfrom(6, 0x7fa8a698c4f4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable) write(5, "\1\0\0\0\0\0\0\0", 8) = 8 recvfrom(15, "\357\276\255\336\30\0\1\0\0\0\0\0\35\20\0\0\272\2\0\0\n\3<m\7\370\0\0\0\0\0\0"..., 44, 0, NULL, NULL) = 44 recvfrom(15, "\1\0\0\0\0\0\0\0\256\2\0\0From: -@mail.ru"..., 698, 0, NULL, NULL) = 698 stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1448, ...}) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++

  4. Former user Account Deleted

    Comment 4 originally posted by gto6ka on 2013-11-08T16:06:12.000Z:

    плагин свежесобранный и установленный из гита

  5. Николай Антонов

    Comment 5 originally posted by ostinru on 2013-11-08T16:13:06.000Z:

    У Вас есть контакт с email '-@mail.ru' ?

  6. Janus Kobain

    Comment 6 originally posted by plaque_fcc on 2013-11-08T16:43:50.000Z:

    Остин прав: такой логин правилами @Mail.ru запрещается, если я всё верно помню.

    Забавно, если он таки существует.

  7. Николай Антонов

    Comment 7 originally posted by ostinru on 2013-11-08T17:07:09.000Z:

    В любом случае segfault-а не должно быть

  8. Janus Kobain

    Comment 8 originally posted by plaque_fcc on 2013-11-08T17:23:11.000Z:

    Его быть не должно ни в котором из непредусмотренных случаев; правда, это не всегда удаётся предусмотреть, камрад.

  9. Former user Account Deleted

    Comment 9 originally posted by gto6ka on 2013-11-12T11:11:28.000Z:

    простите, я просто затер встречающиеся в тексте мыла

  10. Former user Account Deleted

    Comment 10 originally posted by nikolay.antonov@exactprosystems.com on 2013-11-12T11:16:12.000Z:

    Ok. Попробуем воспроизвести.

    Какая версия плагина?

  11. Janus Kobain

    Comment 11 originally posted by plaque_fcc on 2013-11-12T11:47:02.000Z:

    плагин свежесобранный и установленный из гита

    — их есть у нас! 0.2?

    Присоединяюсь к процессу.

  12. Former user Account Deleted

    Comment 12 originally posted by gto6ka on 2013-11-14T07:55:41.000Z:

    "— их есть у нас! 0.2?" естественно

  13. Former user Account Deleted

    Comment 13 originally posted by gto6ka on 2013-11-19T12:42:06.000Z:

    проблема проявилась только в клиенте в линухе после запуска клиента в винде я получил все оффлайновые сообщения(их было очень много, пару минут получал сообщения) и смог запустить клиент в линухе, сейчас клиент работает видимо парсер в линухе работает немного по-другому

  14. Log in to comment