Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 96603 - Mutt segfaults when thread-sorting mailbox
Summary: Mutt segfaults when thread-sorting mailbox
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High major (vote)
Assignee: Aron Griffis (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-06-20 06:26 UTC by toon
Modified: 2012-01-31 15:47 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description toon 2005-06-20 06:26:57 UTC
I've been addicted to mutt for a long time.
I use it against a secure-IMAP mailserver.
This works great on x86, but on my new and shiny amd64
mutt crashes all over the place. I did some research on
the internet, only to find out that mutt appears to have
a long history of segmentation violations while sorting
threaded mailboxes. I must have been lucky in the past.  :-(

Anyway, I've tried everything I could think of, including:
- trying different (old, new and very new) releases of mutt,
  including the CVS-head of the day. All with the same result.
- trying out a patch that I found on the mutt-dev mailing list.
- trying out the parameter setting 'set strict_threads=yes' in .muttrc.

Reproducible: Always
Steps to Reproduce:
1. $ mutt -f imaps://<my-mailserver>
2. Set sort mode to threaded via the command 'ot'
3. Switch to the mailbox where I keep my linux-kernel mailing list.


Actual Results:  
Mutt segfaults.

Expected Results:  
Mutt should display the index of my mailbox with the linux-kernel mailing list
messages.

Mutt works flawlessly with the same setup under x68.
I only have this problem on x86_64.

I am using these locale:
toon@shuttle ~ $ locale
LANG=
LC_CTYPE="nl_NL.utf8"
LC_NUMERIC="nl_NL.utf8"
LC_TIME="nl_NL.utf8"
LC_COLLATE="nl_NL.utf8"
LC_MONETARY="nl_NL.utf8"
LC_MESSAGES="nl_NL.utf8"
LC_PAPER="nl_NL.utf8"
LC_NAME="nl_NL.utf8"
LC_ADDRESS="nl_NL.utf8"
LC_TELEPHONE="nl_NL.utf8"
LC_MEASUREMENT="nl_NL.utf8"
LC_IDENTIFICATION="nl_NL.utf8"
LC_ALL=nl_NL.utf8

The problem disappears when I start mutt as follows:
toon@shuttle ~ $ LC_ALL=POSIX mutt -f imaps://

shuttle mutt # emerge info
Portage 2.0.51.19 (default-linux/amd64/2005.0, gcc-3.4.3,
glibc-2.3.4.20041102-r1, 2.6.12-gentoo x86_64)
=================================================================
System uname: 2.6.12-gentoo x86_64 AMD Athlon(tm) 64 Processor 3200+
Gentoo Base System version 1.6.12
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Jun 11 2005, 10:00:05)]
dev-lang/python:     2.3.5
sys-apps/sandbox:    [Not Present]
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.5, 1.8.5-r3, 1.6.3, 1.7.9-r1, 1.4_p6, 1.9.5
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r4
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo"
LC_ALL="nl_NL.utf8"
MAKEOPTS="-j1"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage-overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X X509 acpi acpi4linux alsa apache2 berkdb bindist bitmap-fonts
bluetooth bzlib cddb cdparanoia cdr chroot crypt cups curl dga doc dvb dvd dvdr
dvdread eds esd ethereal evo evo2 fam fbcon flac font-server fortran gb gd gdbm
gif gimp gimpprint gnome gnome-print gnomedb gphoto2 gpm gs gstreamer gtk gtk2
gtkhtml hal howl ieee1394 imap imlib innodb insecure-drivers ipv6 irmc ithreads
j2ee jabber jack java javadoc javamail javascript jboss jdepend jmx jp2 jpeg
kerberos largeterminal lcms ldap leim libgda libwww lm_sensors lprng lzw
lzw-tiff mad mailwrapper mbox motif mozcalendar mozilla mozp3p mozplaintext mp3
mpeg mpeg2 mpeg4 mplayer mule ncurses nls nptl oav offensive ogg oggvorbis
on-the-fly-crypt opengl oss pam passfile pcap perl php pic plotutils png
procmail python readline rrdtool samba sasl slang snmp soap socks5 sox ssl tcpd
threads tiff truetype truetype-fonts type1 type1-fonts unicode usb userlocales
vorbis wavelan wmf xanim xface xinerama xml2 xmlrpc xosd xpm xprint xrandr xv
xvid zeo zlib userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LDFLAGS, LINGUAS

toon@shuttle ~ $ mutt -v
Mutt 1.5.9i (2005-03-13)
Copyright (C) 1996-2002 Michael R. Elkins en anderen.
Mutt komt ABSOLUUT ZONDER GARANTIE;  voor meer informatie `mutt -vv'.
Mutt is vrije software, en u bent vrij om het te verspreiden
onder bepaalde voorwaarden;  type `mutt -vv' voor meer informatie.

System: Linux 2.6.12-gentoo (x86_64) [using slang 10409]
Opties tijdens compileren:
-DOMAIN
-DEBUG
-HOMESPOOL  +USE_SETGID  +USE_DOTLOCK  +DL_STANDALONE
-USE_FCNTL  +USE_FLOCK   -USE_INODESORT
+USE_POP  +USE_IMAP  -USE_GSS  +USE_SSL  -USE_GNUTLS  +USE_SASL  +USE_SASL2
-HAVE_REGCOMP  +USE_GNU_REGEX
+HAVE_COLOR  -HAVE_START_COLOR  -HAVE_TYPEAHEAD  -HAVE_BKGDSET
-HAVE_CURS_SET  -HAVE_META  -HAVE_RESIZETERM
+CRYPT_BACKEND_CLASSIC_PGP  +CRYPT_BACKEND_CLASSIC_SMIME  -CRYPT_BACKEND_GPGME
-BUFFY_SIZE -EXACT_ADDRESS  -SUN_ATTACHMENT
+ENABLE_NLS  -LOCALES_HACK  +HAVE_WC_FUNCS  +HAVE_LANGINFO_CODESET 
+HAVE_LANGINFO_YESEXPR
+HAVE_ICONV  -ICONV_NONTRANS  -HAVE_LIBIDN  +HAVE_GETSID  +HAVE_GETADDRINFO 
+USE_HCACHE
-ISPELL
SENDMAIL="/usr/sbin/sendmail"
MAILPATH="/var/mail"
PKGDATADIR="/usr/share/mutt"
SYSCONFDIR="/etc/mutt"
EXECSHELL="/bin/sh"
MIXMASTER="mixmaster"
Stuur een bericht naar <mutt-dev@mutt.org> om de auteurs te bereiken.
Gebruik de flea(1) om een programmafout te melden.
Comment 1 toon 2005-06-20 07:12:17 UTC
Ah, another good data point:
The problem disappears when I compile mutt without slang.
So there probably are some issues with the support
for UTF-8 in slang on 64-bit platforms?
Comment 2 Aron Griffis (RETIRED) gentoo-dev 2005-08-11 16:49:42 UTC
I haven't been able to reproduce this yet.  Is it fixed for you with mutt-1.5.9
and slang-1.4.9-r2?
Comment 3 toon 2005-08-12 14:38:16 UTC
(In reply to comment #2)
> I haven't been able to reproduce this yet.
> Is it fixed for you with mutt-1.5.9 and slang-1.4.9-r2?

Mutt has been rock solid since I compiled it without slang.
Now that you asked me to test it again, I turned on the use flag 'slang',
and recompiled slang and mutt with ACCEPT_KEYWORDS=~amd64 in order to
get the versions you asked to test with.
The result is exactly the same as before:
- I start mutt, opening my personal mailbox.
- I activate thread sorting (ot).
- I switch to a different mailbox.
- BOOOOOMMM  (segmentation violation)

I recompiled mutt-1.5.9 without the use flag 'slang', and it works perfectly.
Comment 4 Aron Griffis (RETIRED) gentoo-dev 2005-08-15 06:32:09 UTC
Toon, what *version* of slang do you have installed?  I asked specifically about
1.4.9-r2.  From the ChangeLog, it supposedly contains some UTF-8 fixes.
Comment 5 toon 2005-08-15 09:21:27 UTC
# qpkg -q -I slang
sys-libs/slang-1.4.9-r2 *
DEPENDED ON BY:
        nano-1.3.7
        newt-0.51.6
        mutt-1.5.9
        muttng-20050325
Comment 6 Aron Griffis (RETIRED) gentoo-dev 2005-08-17 13:24:30 UTC
ok, mutt-1.5.10 now ignores USE=slang, preferring to always use ncurses.  That
should solve this problem.
Comment 7 Eric Augustus 2005-09-11 13:51:58 UTC
(In reply to comment #6)
> ok, mutt-1.5.10 now ignores USE=slang, preferring to always use ncurses.  That
> should solve this problem.

I've been using mutt a long time with slang, including 1.5.9, without any
problems. I have more problems with ncurses and display artifacts.

I think removing the option to build with slang a poor choice. Can we have an
option to build with slang again?
Comment 8 R Stephan 2012-01-31 15:47:56 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > ok, mutt-1.5.10 now ignores USE=slang, preferring to always use ncurses.  That
> > should solve this problem.
> 
> I've been using mutt a long time with slang, including 1.5.9, without any
> problems. I have more problems with ncurses and display artifacts.
> 
> I think removing the option to build with slang a poor choice. Can we have an
> option to build with slang again?

I agree. Especially because the bug wasn't confirmed on the newest slang-1, much less with slang-2. This is throwing the baby out with the bathwater.