On 05/01/2016 10:54, Andriy Gapon wrote: > On 05/01/2016 10:45, Andriy Gapon wrote: >> >> Very weird, this suddenly started happening to me but with libreoffice. I can >> not correlate the problem with any actions / events. >> >> stderr: >> soffice.bin: environment corrupt; missing value for QT_IM_MO >> >> gdb: >> Core was generated by `soffice.bin'. >> Program terminated with signal SIGABRT, Aborted. >> #0 thr_kill () at thr_kill.S:3 >> 3 RSYSCALL(thr_kill) >> [Current thread is 2 (Thread 816615000 (LWP 102134))] >> (gdb) bt >> #0 thr_kill () at thr_kill.S:3 >> #1 0x0000000800dc5ddb in __raise (s=6) at /usr/src/lib/libc/gen/raise.c:52 >> #2 0x0000000800dc5d49 in abort () at /usr/src/lib/libc/stdlib/abort.c:65 >> #3 0x0000000805231318 in tools::extendApplicationEnvironment() () from >> /usr/local/lib/libreoffice/program/libtllo.so >> >> Smells like a possible bug in libc... > > Is there a limit on the environment's size? > QT_IM_MODULE is reported by ps as the last variable. I have taken another look at the problem and I've discovered that the affected variable is corrupted in a peculiar way: (kgdb) p environ[61] $23 = 0x7fffffffef45 "QT_IM_MO" (kgdb) x/s 0x7fffffffef45 0x7fffffffef45: "QT_IM_MO" (kgdb) x/s 0x7fffffffef4d 0x7fffffffef4d: "" (kgdb) x/s 0x7fffffffef4e 0x7fffffffef4e: "" (kgdb) x/s 0x7fffffffef4f 0x7fffffffef4f: "" (kgdb) x/s 0x7fffffffef50 0x7fffffffef50: "" (kgdb) x/s 0x7fffffffef51 0x7fffffffef51: "=xim" (kgdb) p environ[62] $42 = 0x0 So, it's "QT_IM_MODULE=xim" with 4 bytes (corresponding to "DULE") replaced with zeroes. This is 100% reproducible in my current environment, so it could be a deterministic write to a wrong offset. -- Andriy GaponReceived on Tue Jan 19 2016 - 12:20:36 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:02 UTC