On Fri, Jun 10, 2005 at 03:27:53PM +0200, Sjoerd Simons wrote: > On Thu, Jun 09, 2005 at 04:26:42PM -0300, Felipe Massia Pereira wrote: > > Package: gkrellmms > > Version: 2.1.22-1 > > Severity: normal > > > > > > Gkrellm stops when XMMS is running (and Gkrellmms is enabled, of > > course; when it's not enabled, it works fine). > > > > There are 2 info that may help: > > > > - it used to work fine. Problems began to appear when I switched my > > system to UTF-8; > > > > - there seem to be a problem with XMMS socket also. I can not reproduce > > it right now, but there's a message in the X console that I think it's > > being emmitted by xmms. > > > > I'm going to try and delete .gkrellm and .xmms but it is painful :-( > > > > Here's the last lines of strace output, right after mms was enabled at > > gkrellm plugins page. > > > > socket(PF_FILE, SOCK_STREAM, 0) = 11 > > getuid32() = 2004 > > geteuid32() = 2004 > > setuid32(2004) = 0 > > setreuid32(2004, 2004) = 0 > > connect(11, {sa_family=AF_FILE, path="/tmp/xmms_felipe.0"}, 110) = 0 > > write(11, "\1\0\22\0\4\0\0\0", 8) = 8 > > write(11, "9\0\0\0", 4) = 4 > > read(11, "\1\0\0\0003\0\0\0", 8) = 8 > > read(11, "/l/musica/taize/misc/taize_-_du_"..., 51) = 51 > > read(11, "\1\0\0\0\0\0\0\0", 8) = 8 > > close(11) = 0 > > ioctl(3, FIONREAD, [0]) = 0 > > poll([{fd=4, events=POLLIN}, {fd=3, events=POLLIN}, {fd=10, > > events=POLLIN}], 3, 0) = 0 > > socket(PF_FILE, SOCK_STREAM, 0) = 11 > > getuid32() = 2004 > > geteuid32() = 2004 > > setuid32(2004) = 0 > > setreuid32(2004, 2004) = 0 > > connect(11, {sa_family=AF_FILE, path="/tmp/xmms_felipe.0"}, 110) = 0 > > write(11, "\1\0\22\0\4\0\0\0", 8) = 8 > > write(11, ":\0\0\0", 4) = 4 > > read(11, "\1\0\0\0:\0\0\0", 8) = 8 > > read(11, "/l/musica/taize/misc/taize_-_el_"..., 58) = 58 > > read(11, "\1\0\0\0\0\0\0\0", 8) = 8 > > close(11) = 0 > > [1]- Exit 1 gkrellm > > > > It sit stopped after close(11) and I had to hit ^C. > > Ugh, this should have been fixed in 2.1.22. Could you run it in ltrace, that > sometimes gives helpfull results. Otherwise i'll prepare a debug version for > you.
I'm trying to learn :-) I removed dh_strip and "-s" from install command, built and installed the resulting .deb. Then I ran gdb gkrellm with gkrellmms off initially and xmms not running. I set a break at update_gkrellmms and ran xmms before stepping into the function. Then I stepped with "n" until it called "update_playlist" and stopped. Then I hit ^C and here is the backtrace: (gdb) 209 if (pGK->second_tick) (gdb) 210 set_panel_status(); (gdb) 212 playlist_changed = update_playlist(); (gdb) Program received signal SIGINT, Interrupt. 0xb79c9a16 in getenv () from /lib/tls/i686/cmov/libc.so.6 (gdb) backtrace #0 0xb79c9a16 in getenv () from /lib/tls/i686/cmov/libc.so.6 #1 0xb79c301a in gettext () from /lib/tls/i686/cmov/libc.so.6 #2 0xb79c25b2 in gettext () from /lib/tls/i686/cmov/libc.so.6 #3 0xb79c225f in dcgettext () from /lib/tls/i686/cmov/libc.so.6 #4 0xb7b5597f in g_get_codeset () from /usr/lib/libglib-2.0.so.0 #5 0xb7b1c328 in g_convert_with_fallback () from /usr/lib/libglib-2.0.so.0 #6 0xb7b1c3a0 in g_locale_to_utf8 () from /usr/lib/libglib-2.0.so.0 #7 0xb749c085 in string_to_utf8 (str=0x0, is_filename=1) at playlist.c:70 #8 0xb749c42f in load_playlist () at playlist.c:169 #9 0xb749c60c in update_playlist () at playlist.c:211 #10 0xb7496de6 in update_gkrellmms () at gkrellmms.c:212 #11 0x08059062 in gkrellm_map_color_string () #12 0xb7b32c9c in g_main_context_wakeup () from /usr/lib/libglib-2.0.so.0 #13 0xb7b30582 in g_main_depth () from /usr/lib/libglib-2.0.so.0 #14 0xb7b315f8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #15 0xb7b31930 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #16 0xb7b31ed3 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 #17 0xb7e0d243 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 #18 0x0805d0b5 in main () Maybe this info could help... (gdb) print str No symbol "str" in current context. (gdb) frame 7 #7 0xb749c085 in string_to_utf8 (str=0x0, is_filename=1) at playlist.c:70 70 result = g_locale_to_utf8(str, -1, &read, NULL, &error); (gdb) print str $1 = (gchar *) 0x0 (gdb) print read $2 = 0 (gdb) print error $3 = (GError *) 0x0 (gdb) frame 8 #8 0xb749c42f in load_playlist () at playlist.c:169 169 filename = string_to_utf8(filename, TRUE); (gdb) list 164 if (filename == NULL) { 165 /* error occurred empty playlist and try again */ 166 empty_playlist(); 167 return load_playlist(); 168 } 169 filename = string_to_utf8(filename, TRUE); 170 171 while (gtk_events_pending()) 172 gtk_main_iteration(); 173 (gdb) print filename $4 = 0x81baa58 "??/musica/14 bis/14_bis_-_eu_j�fechei_meus_olhos.mp3" (gdb) x/55c filename 0x81baa58: 63 '?' 63 '?' 47 '/' 109 'm' 117 'u' 115 's' 105 'i' 99 'c' 0x81baa60: 97 'a' 47 '/' 49 '1' 52 '4' 32 ' ' 98 'b' 105 'i' 115 's' 0x81baa68: 47 '/' 49 '1' 52 '4' 95 '_' 98 'b' 105 'i' 115 's' 95 '_' 0x81baa70: 45 '-' 95 '_' 101 'e' 117 'u' 95 '_' 106 'j' -31 '� 95 '_' 0x81baa78: 102 'f' 101 'e' 99 'c' 104 'h' 101 'e' 105 'i' 95 '_' 109 'm' 0x81baa80: 101 'e' 117 'u' 115 's' 95 '_' 111 'o' 108 'l' 104 'h' 111 'o' 0x81baa88: 115 's' 46 '.' 109 'm' 112 'p' 51 '3' 0 '\0' 0 '\0' (gdb) ltrace didn't seem to be of any help (many drawing function calls). I can do more debugging tasks, just tell me which. tia -- Felipe