Witam, Używam EKG od bardzo dawna. Niestety, ostatnio musiałem zmigrować się ze starego serwera, ze starym EKG, i mam.. nowsze, które zaczęło się wykładać. Mam nadzieję, że ktoś znajdzie chwilkę, aby spojrzeć na problem, i być może, znaleźć rozwiązanie.
Moje EKG to: EKG - Eksperymentalny Klient Gadu-Gadu (20110306) libgadu-20110306 (protokół 0x2e, klient 10.1.0.11070) skompilowano: Mar 7 2011 18:12:20 Backtrace'y w załączniku. Jeśli chodzi o user-experience: EKG wykłada się nawet zaocznie - na zdetachowanym screenie. Nie widzę, więc tu żadnego związku z działaniami użytkownika, albo ich brakiem. Jedyne co zaobserwowałem to, że sytuacja ma miejsce po kilku dniach działania. Korzystając z okazji, wyżalę się na pewną bolączkę. Otóż, serwery gg od czasu do czasu wysyłają wielki pakiet z jakimś reklamowym XML'em. Tzn. tam jest treść (merytoryczna - powiedzmy) i base64 zakodowany obrazek czy jakiś flashowy szajs. No i, że ten pakiet jest monstrualny, to EKG parsuje XML'a, bo ja wiem, ze 20 sekund (na 2GHz Opteronie). I oczywiście nie ma to żadnego "efektu" poza oknem debug. Bywa to dość frustrujące, gdyż całe EKG "wisi" w tym czasie. I teraz nie wiem.. nie sugeruję rozwątkowania parsowania, ale może chociaż jakieś ignorowanie? Pozdrawiam, Michał Przyłuski
#0 0x0000003529a328f5 in raise () from /lib64/libc.so.6 #1 0x0000003529a340d5 in abort () from /lib64/libc.so.6 #2 0x0000003529a6f8bb in __libc_message () from /lib64/libc.so.6 #3 0x0000003529a751e6 in malloc_printerr () from /lib64/libc.so.6 #4 0x0000000000434075 in window_backlog_add (w=0x24e64a0, str=0x36a5960) at ui-ncurses.c:447 #5 0x0000000000437512 in ui_ncurses_print (target=<value optimized out>, separate=<value optimized out>, line=<value optimized out>) at ui-ncurses.c:1434 #6 0x00000000004229e6 in print_window (target=0x44da80 "__debug", separate=0, theme=<value optimized out>) at themes.c:586 #7 0x000000000042aaa0 in debug_handler (level=<value optimized out>, format=<value optimized out>, ap=<value optimized out>) at ekg.c:1087 #8 0x00007f16585c1023 in gg_debug (level=16, format=0x7f16585d6870 "// gg_resolver_pthread_start() %p\n") at debug.c:127 #9 0x00007f16585cd269 in gg_resolver_pthread_start (fd=0x4321d60, priv_data=0x4321e18, hostname=0x7f16585d2729 "appmsg.gadu-gadu.pl") at resolver.c:546 #10 0x00007f16585c7a03 in gg_login (p=<value optimized out>) at libgadu.c:992 #11 0x0000000000408c02 in ekg_connect () at stuff.c:1464 #12 0x000000000042b476 in ekg_wait_for_key () at ekg.c:542 #13 0x0000000000438b6c in ui_ncurses_loop () at ui-ncurses.c:4745 #14 0x000000000042a586 in main (argc=<value optimized out>, argv=<value optimized out>) at ekg.c:1678 #0 window_kill (w=0x9134a0, quiet=<value optimized out>) at ui-ncurses.c:5036 #1 0x00000000004387a1 in ui_ncurses_deinit () at ui-ncurses.c:3250 #2 0x000000000042ac20 in handle_sigsegv (sig=11) at ekg.c:966 #3 <signal handler called> #4 window_backlog_add (w=0x9134a0, str=0x237ad20) at ui-ncurses.c:447 #5 0x0000000000437512 in ui_ncurses_print (target=<value optimized out>, separate=<value optimized out>, line=<value optimized out>) at ui-ncurses.c:1434 #6 0x00000000004229e6 in print_window (target=0x44da80 "__debug", separate=0, theme=<value optimized out>) at themes.c:586 #7 0x000000000042aaa0 in debug_handler (level=<value optimized out>, format=<value optimized out>, ap=<value optimized out>) at ekg.c:1087 #8 0x00007f74c0165da7 in gg_debug_session (gs=0x1e52cd0, level=16, format=0x7f74c017a350 "// gg_recv_packet() body recv(%d,%p,%d) = %d\n") at debug.c:147 #9 0x00007f74c016ee3f in gg_recv_packet (sess=0x1e52cd0) at libgadu.c:564 #10 0x00007f74c0166e72 in gg_watch_fd (sess=0x1e52cd0) at events.c:929 #11 0x000000000041b432 in handle_event (s=<value optimized out>) at events.c:1384 #12 0x000000000042b779 in ekg_wait_for_key () at ekg.c:824 #13 0x0000000000438b6c in ui_ncurses_loop () at ui-ncurses.c:4745 #14 0x000000000042a586 in main (argc=<value optimized out>, argv=<value optimized out>) at ekg.c:1678