I'm not sure if it is exactly a bug, but I decided to report just in case. This happens just with Claws (all other GTK2 apps run fine...). Claws-mail 3.14.1 was running fine (on Linux). Then I made a massive clean up on my system, a huge upgrade and now I'm left with Claws stalling at the start (details below). The workaround was to preload libpthread: LD_PRELOAD=/lib64/libpthread.so.0 claws-mail so it seems I'm having a problem linking libpthread. Running it with strace gives me different results each time: 1) fails with "tpp.c:84: __pthread_tpp_change_priority: Assertion `new_prio == -1 || (new_prio >= fifo_min_prio && new_prio <= fifo_max_prio)" open("/usr/share/locale/en_US/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7f74ad5e0468, 0x81 /* FUTEX_??? */, 2147483647) = 0 open("/usr/local/share/locale/en_US/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/local/share/locale/en/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7f74abcc50a8, 0x81 /* FUTEX_??? */, 2147483647) = 0 rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0 futex(0x7f74ad5e0468, 0x81 /* FUTEX_??? */, 2147483647) = 0 sched_getparam(11701, { 0 }) = 0 sched_getscheduler(11701) = 0 (SCHED_OTHER) sched_get_priority_max(SCHED_FIFO) = 99 sched_get_priority_min(SCHED_FIFO) = 1 write(2, "claws-mail: tpp.c:84: __pthread_"..., 148claws-mail: tpp.c:84: __pthread_tpp_change_priority: Assertion `new_prio == -1 || (new_prio >= fifo_min_prio && new_prio <= fifo_max_prio)' failed. ) = 148 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74b46a1000 rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0 getpid() = 11701 gettid() = 11701 tgkill(11701, 11701, SIGABRT) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 --- SIGABRT (Aborted) @ 0 (0) --- +++ killed by SIGABRT +++ Process 11701 detached *** 2) stalls at FUTEX: access("/usr/xorg/share/X11/locale/en_US.UTF-8/XLC_LOCALE", R_OK) = 0 open("/usr/xorg/share/X11/locale/en_US.UTF-8/XLC_LOCALE", O_RDONLY) = 4 fstat(4, {st_mode=S_IFREG|0644, st_size=4250, ...}) = 0 read(4, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"..., 4096) = 4096 read(4, " \n#\tcs20 class\ncs15\t{\n\tside\t\tGR\n"..., 4096) = 154 read(4, "", 4096) = 0 close(4) = 0 getresuid([501], [501], [501]) = 0 getresgid([100], [100], [100]) = 0 open("/usr/share/locale/en_US/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7f450702a468, 0x81 /* FUTEX_??? */, 2147483647) = 0 open("/usr/local/share/locale/en_US/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/local/share/locale/en/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7f450570f0a8, 0x81 /* FUTEX_??? */, 2147483647) = 0 rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0 futex(0x7f450702a468, 0x81 /* FUTEX_??? */, 2147483647) = 0 futex(0x2322250, FUTEX_WAIT, 2, NULL 3) stalls at rt_sigsuspend: open("/usr/share/locale/en_US/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/en/LC_MESSAGES/messages.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7f97589a8468, 0x81 /* FUTEX_??? */, 2147483647) = 0 open("/usr/local/share/locale/en_US/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/local/share/locale/en/LC_MESSAGES/gtk20.mo", O_RDONLY) = -1 ENOENT (No such file or directory) futex(0x7fff0737157c, 0x7 /* FUTEX_??? */, 0) = -1 EPERM (Operation not permitted) futex(0x7f975708d0a8, 0x81 /* FUTEX_??? */, 2147483647) = 0 rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0 futex(0x7f97589a8468, 0x81 /* FUTEX_??? */, 2147483647) = 0 futex(0x269d250, 0x6 /* FUTEX_??? */, 1) = -1 EDEADLK (Resource deadlock avoided) rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigsuspend([] *** Here's the output of ldd (as you can see, libpthread is here): linux-vdso.so.1 (0x00007fff4e6c1000) libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f11b05a9000) libgtk-x11-2.0.so.0 => /usr/local/lib/libgtk-x11-2.0.so.0 (0x00007f11afe79000) libgdk-x11-2.0.so.0 => /usr/local/lib/libgdk-x11-2.0.so.0 (0x00007f11afba1000) libatk-1.0.so.0 => /usr/local/lib/libatk-1.0.so.0 (0x00007f11af97b000) libpangocairo-1.0.so.0 => /usr/local/lib/libpangocairo-1.0.so.0 (0x00007f11af76d000) libpangoft2-1.0.so.0 => /usr/local/lib/libpangoft2-1.0.so.0 (0x00007f11af556000) libgdk_pixbuf-2.0.so.0 => /usr/local/lib/libgdk_pixbuf-2.0.so.0 (0x00007f11af32b000) libcairo.so.2 => /usr/local/lib/libcairo.so.2 (0x00007f11aefdd000) libpixman-1.so.0 => /usr/xorg/lib64/libpixman-1.so.0 (0x00007f11aed14000) libxcb-shm.so.0 => /usr/xorg/lib64/libxcb-shm.so.0 (0x00007f11aeb11000) libxcb-render.so.0 => /usr/xorg/lib64/libxcb-render.so.0 (0x00007f11ae903000) libXrender.so.1 => /usr/xorg/lib64/libXrender.so.1 (0x00007f11ae6f9000) libXext.so.6 => /usr/xorg/lib64/libXext.so.6 (0x00007f11ae4e4000) libpango-1.0.so.0 => /usr/local/lib/libpango-1.0.so.0 (0x00007f11ae291000) libgthread-2.0.so.0 => /usr/local/lib/libgthread-2.0.so.0 (0x00007f11ae08f000) libfontconfig.so.1 => /usr/xorg/lib64/libfontconfig.so.1 (0x00007f11ade3b000) libexpat.so.1 => /usr/local/lib/libexpat.so.1 (0x00007f11adc0c000) libpng16.so.16 => /usr/local/lib/libpng16.so.16 (0x00007f11ad9d0000) libharfbuzz.so.0 => /usr/local/lib/libharfbuzz.so.0 (0x00007f11ad766000) libfreetype.so.6 => /usr/local/lib/libfreetype.so.6 (0x00007f11ad490000) libgnutls.so.30 => /usr/local/lib/libgnutls.so.30 (0x00007f11ad167000) libidn.so.11 => /usr/local/lib/libidn.so.11 (0x00007f11acf33000) libtasn1.so.6 => /usr/local/lib/libtasn1.so.6 (0x00007f11acd1f000) libnettle.so.6 => /usr/local/lib/../lib64/libnettle.so.6 (0x00007f11acae3000) libhogweed.so.4 => /usr/local/lib/../lib64/libhogweed.so.4 (0x00007f11ac8ae000) libgmp.so.10 => /usr/local/lib/libgmp.so.10 (0x00007f11ac628000) libSM.so.6 => /usr/xorg/lib64/libSM.so.6 (0x00007f11ac41f000) libICE.so.6 => /usr/xorg/lib64/libICE.so.6 (0x00007f11ac202000) libstartup-notification-1.so.0 => /usr/local/lib/libstartup-notification-1.so.0 (0x00007f11abff8000) libxcb-util.so.1 => /usr/xorg/lib64/libxcb-util.so.1 (0x00007f11abdf2000) libX11-xcb.so.1 => /usr/xorg/lib64/libX11-xcb.so.1 (0x00007f11abbf0000) libX11.so.6 => /usr/xorg/lib64/libX11.so.6 (0x00007f11ab89f000) libxcb.so.1 => /usr/xorg/lib64/libxcb.so.1 (0x00007f11ab677000) libpthread-stubs.so.0 => /usr/xorg/lib64/libpthread-stubs.so.0 (0x00007f11ab475000) libXau.so.6 => /usr/xorg/lib64/libXau.so.6 (0x00007f11ab271000) libXdmcp.so.6 => /usr/xorg/lib64/libXdmcp.so.6 (0x00007f11ab06b000) libdbus-glib-1.so.2 => /usr/local/lib/libdbus-glib-1.so.2 (0x00007f11aae40000) libgio-2.0.so.0 => /usr/local/lib/libgio-2.0.so.0 (0x00007f11aaa91000) libgmodule-2.0.so.0 => /usr/local/lib/libgmodule-2.0.so.0 (0x00007f11aa88d000) libmount.so.1 => /lib64/libmount.so.1 (0x00007f11aa645000) libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f11aa403000) libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f11aa1ff000) librt.so.1 => /lib64/librt.so.1 (0x00007f11a9ff7000) libdbus-1.so.3 => /usr/local/lib/libdbus-1.so.3 (0x00007f11a9da0000) libgobject-2.0.so.0 => /usr/local/lib/libgobject-2.0.so.0 (0x00007f11a9b4c000) libffi.so.6 => /usr/local/lib/../lib64/libffi.so.6 (0x00007f11a9941000) libglib-2.0.so.0 => /usr/local/lib/libglib-2.0.so.0 (0x00007f11a9618000) libpcre.so.1 => /usr/local/lib/libpcre.so.1 (0x00007f11a93d2000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f11a91b5000) libetpan.so.17 => /usr/local/lib/libetpan.so.17 (0x00007f11a8ee2000) libstdc++.so.6 => /usr/local/lib/../lib64/libstdc++.so.6 (0x00007f11a8b4c000) libm.so.6 => /lib64/libm.so.6 (0x00007f11a8851000) libdb-6.1.so => /usr/local/BerkeleyDB/lib/libdb-6.1.so (0x00007f11a8459000) libz.so.1 => /usr/local/lib/libz.so.1 (0x00007f11a8242000) libsasl2.so.3 => /usr/local/lib/libsasl2.so.3 (0x00007f11a8025000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f11a7e21000) libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f11a7c0a000) libc.so.6 => /lib64/libc.so.6 (0x00007f11a786c000) libXinerama.so.1 => /usr/xorg/lib/libXinerama.so.1 (0x00007f11a7669000) libXrandr.so.2 => /usr/xorg/lib/libXrandr.so.2 (0x00007f11a745e000) libXcursor.so.1 => /usr/xorg/lib/libXcursor.so.1 (0x00007f11a7252000) libXcomposite.so.1 => /usr/xorg/lib/libXcomposite.so.1 (0x00007f11a704f000) libXdamage.so.1 => /usr/xorg/lib/libXdamage.so.1 (0x00007f11a6e4c000) libXfixes.so.3 => /usr/xorg/lib/libXfixes.so.3 (0x00007f11a6c46000) /lib64/ld-linux-x86-64.so.2 (0x00007f11b07e0000) libgcc_s.so.1 => /usr/local/lib/../lib64/libgcc_s.so.1 (0x00007f11a6a2e000) Output of --version-full: Claws Mail version 3.14.1 runtime GTK+ 2.24.31 / GLib 2.50.2 buildtime GTK+ 2.24.31 / GLib 2.50.2 Compiled-in features: GnuTLS IPv6 iconv libetpan 1.6 libSM I even tried to compile with debug symbols and run it through gdb, but since gdb complains about libpthread, the only way to run it is forcing gdb to preload the libpthread (so I can't figure it out why libpthread isn't being linked first of all). If it's not a bug, sorry about posting it here. I think it's interesting since other GTK2 apps don't show this behaviour. Or maybe I just broke something here. In this case you can close it and I will try the mailing list instead. Thanks!
Just a note: The problem is specific to your installation. Discussing it on the mailing-list would have been the better decision. Don't forget giving more details about what kind of "massive clean up" and "huge upgrade" you've performed. Have you messed with glibc? That's where the tpp.c assertion comes from, btw.
Ok Michael, so I'm closing here and I'll post on the mailing list. Sorry about that.