bug is actually in glibc ** Changed in: irssi (Ubuntu) Status: New => Invalid
** Also affects: glibc via http://sourceware.org/bugzilla/show_bug.cgi?id=5277 Importance: Unknown Status: Unknown ** Summary changed: - Infinite loop in irssi converting to ISO-2022-JP + Some conversions to iso-2022-jp can hang iconv ** Description changed: - Binary package hint: irssi-text - - With irssi global settings: - 04:43 recode_autodetect_utf8 = ON - 04:43 recode_fallback = sjis - 04:43 recode = ON - 04:43 recode_out_default_charset = - 04:43 recode_transliterate = ON - 04:43 term_charset = UTF-8 - - and a local channel /recode entry setting the channel to ISO-2022-JP, typing "オマエモナー(=゚ω゚)つ)゚∀゚)グァ" triggers a reproducable infinite loop deep in gconv: - 0xb7ad7b21 in __gconv_transliterate () from /lib/tls/i686/cmov/libc.so.6 - (gdb) bt - #0 0xb7ad7b21 in __gconv_transliterate () from /lib/tls/i686/cmov/libc.so.6 - #1 0xb7886d46 in gconv () from /usr/lib/gconv/ISO-2022-JP.so - #2 0xb7ad50f5 in __gconv_transform_utf8_internal () from /lib/tls/i686/cmov/libc.so.6 - #3 0xb7ad0645 in __gconv () from /lib/tls/i686/cmov/libc.so.6 - #4 0xb7acfbfa in iconv () from /lib/tls/i686/cmov/libc.so.6 - #5 0xb7da6593 in g_iconv () from /usr/lib/libglib-2.0.so.0 - #6 0xb7da673d in g_convert_with_iconv () from /usr/lib/libglib-2.0.so.0 - #7 0xb7da69d4 in g_convert () from /usr/lib/libglib-2.0.so.0 - #8 0x080cfe30 in recode_out () - #9 0x080d92f5 in write_buffer_deinit () - #10 0x080d6a65 in signal_remove_full () - #11 0x080d6bca in signal_emit () - #12 0x0807fa04 in completion_get_targets () - #13 0x080d6a65 in signal_remove_full () - #14 0x080d6bca in signal_emit () - #15 0x080c34b9 in commands_remove_module () - #16 0x080d6a65 in signal_remove_full () - #17 0x080d6bca in signal_emit () - #18 0x0805c285 in input_listen_deinit () - #19 0x080d6a65 in signal_remove_full () - #20 0x080d6bca in signal_emit () - #21 0x0809393c in keyboard_entry_redirect () - #22 0x080d6a65 in signal_remove_full () - #23 0x080d6bca in signal_emit () - #24 0x08093781 in key_pressed () - #25 0x0805edfa in gui_readline_deinit () - #26 0x080d6a65 in signal_remove_full () - #27 0x080d6bca in signal_emit () - #28 0x0805c6ed in input_listen_deinit () - #29 0x080c94ee in masks_match () - #30 0xb7de152c in g_vasprintf () from /usr/lib/libglib-2.0.so.0 - #31 0xb7dba8d6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 - #32 0xb7dbd996 in g_main_context_check () from /usr/lib/libglib-2.0.so.0 - #33 0xb7dbde1e in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 - #34 0x0806e1f6 in main () - - Frame #1 in this trace does not return, and irssi uses 100% cpu during - this time. - - This is using: - ||/ Name Version Description - +++-=======================================-=======================================-============================================================================================== - ii irssi 0.8.10-1ubuntu1 terminal based IRC client - ii libc6 2.3.6-0ubuntu20.4 GNU C Library: Shared libraries and Timezone data + Some invocations of iconv() converting to ISO-2022-JP can trigger an + infinite loop; please see the linked glibc bug for details. A patch is + in the comments below. -- Some conversions to iso-2022-jp can hang iconv https://bugs.launchpad.net/bugs/89377 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs