Package: src:anthyVersion: 9100h-16Severity: serious
Rationale for "severity: serious": breaks other programs
If the ~/.anthy/last-record2_default file is corrupted (missing EOL atend), 
there is an infinite loop while parsing; this prevents GTK-basedprograms from 
starting. Such corrupted files may be created if thefilesystem containing $HOME 
is full.
To reproduce:
1) Install Anthy and scim-anthy (I am using 1.2.7-6~bpo70+1)
2) use im-config to set scim as default input method    (FWIW, I am using an 
utf-8 locale)
3) create ~/.anthy/last-record2_default.utf8 file without trailing EOL: e.g.$ 
echo -n 'ADD "CAND_HISTORY" S"きり" S"桐"' > ~/.anthy/last-record2_default.utf8
4) try to start GTK program, e.g. termit (tested with 2.9.4-2):
$ termit
=> Result: GTK program hangs, never shows main window
The same happens with other GTK-based programs.
If I kill the GTK program with SIGABRT, examining the core file showsthat there 
seems to be an infinite loop while parsing the last-record2 file.Extract from 
full backtrace:
Core was generated by `termit -e true'.Program terminated with signal 6, 
Aborted.#0 0xb7766d6c in __kernel_vsyscall ()(gdb) #0 0xb7766d6c in 
__kernel_vsyscall ()No symbol table info available.#1 0xb6a0168b in read () at 
../sysdeps/unix/syscall-template.S:82No locals.#2 0xb69a5b3b in 
_IO_new_file_underflow (fp=0x8d44cf8) at fileops.c:606 count = #3 0xb69a73db in 
_IO_default_uflow (fp=0x8d44cf8) at genops.c:440 ch = #4 0xb69a8808 in 
*__GI___uflow (fp=0x8d44cf8) at genops.c:394No locals.#5 0xb699e0ec in _IO_getc 
(fp=0x8d44cf8) at getc.c:41 result = #6 0xb03c7676 in read_1_token 
(fp=0x8d44cf8, eol=0xbfd8a558) at record.c:1013 c = -1 s = 0x0 in_quote = 0 len 
= 0#7 0xb03c7822 in read_add_row (fp=0x8d44cf8, rst=0x8d4c168, rsc=0x8d47db8) 
at record.c:1083 n = 1 xs = 0x8d45768 token = 0x0 eol = 0 node = 0x8d4a128#8 
0xb03c7a29 in read_1_row (rst=0x8d4c168, fp=0x8d44cf8, op=0x8d4e640 "ADD") at 
record.c:1152 sec_name = 0x8d44b58 "0_\320\b" rsc = 0x8d47db8 eol = 0#9 
0xb03c7b73 in read_journal_record (rs=0x8d4c168) at record.c:1191 op = 
0x8d4e640 "ADD" eol = 0 fp = 0x8d44cf8 st = {st_dev = 65030, __pad1 = 0, st_ino 
= 2378313, st_mode = 33188, st_nlink = 1, st_uid = 1000,  st_gid = 1000, 
st_rdev = 0, __pad2 = 0, st_size = 35, st_blksize = 4096, st_blocks = 8, 
st_atim = { tv_sec = 1423659936, tv_nsec = 441880382}, st_mtim = {tv_sec = 
1423659936, tv_nsec = 441880382},  st_ctim = {tv_sec = 1423659951, tv_nsec = 
513955120}, __unused4 = 0, __unused5 = 0}#10 0xb03c9931 in anthy_create_record 
(id=0x8d48a30 "default") at record.c:2064 rst = 0x8d4c168#11 0xb03c18bb in 
anthy_dic_set_personality (id=0x8d48a30 "default") at word_dic.c:730No 
locals.#12 0xb0407c4d in get_personality () at context.c:70No locals.#13 
0xb04080d9 in anthy_do_create_context (encoding=1) at context.c:233 ac = 
0xb0418000 p = 0x6b5d0
#14 0xb04072bd in anthy_create_context () at main.c:149No locals.#15 0xb045d3df 
in scim_anthy::Conversion::Conversion(AnthyInstance&, scim_anthy::Reading&) () 
from /usr/lib/scim-1.0/1.4.0/IMEngine/anthy.soNo symbol table info available.
[...]

Reply via email to