Comment 8 for bug 71322

Revision history for this message
Marius Gedminas (mgedmin) wrote :

I can reproduce this in Gutsy with

  LC_ALL=en_GB.UTF-8 aspell list < /dev/null

The error does not occur with LC_ALL=C.

Here's the stack trace obtained after installing aspell-dbgsym and libaspell5-dbgsym. It would appear that acommon::DecodeUtf8::decode doesn't like in to be NULL, even when size == 0:

$ gdb --args aspell list
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/aspell list
^D
Program received signal SIGSEGV, Segmentation fault.
acommon::DecodeUtf8::decode (this=0x8097fe8, in=0x0, size=0, out=@0x80dbd04)
    at common/convert.cpp:817
817 common/convert.cpp: No such file or directory.
        in common/convert.cpp
(gdb) bt
#0 acommon::DecodeUtf8::decode (this=0x8097fe8, in=0x0, size=0,
    out=@0x80dbd04) at common/convert.cpp:817
#1 0xb7f05950 in acommon::DocumentChecker::process (this=0x80dbcd8, str=0x0,
    size=0) at common/convert.hpp:142
#2 0x0806b5e0 in CheckerString (this=0x80dc460, speller=0x80778b8,
    in=0xb7d3a440, out=0x0, num_lines=64) at prog/checker_string.cpp:59
#3 0x08054649 in list () at prog/aspell.cpp:1285
#4 0x08061bb5 in main (argc=2, argv=0xbf9d6074) at prog/aspell.cpp:411
#5 0xb7c0a050 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
#6 0x0804d871 in _start ()
(gdb)