Bug#262272: mutt: segfault while sorting mailbox
----- Forwarded message from Eric Warmenhoven <eric@xxxxxxxxxxxxxxx> -----
Subject: Bug#262272: mutt: segfault while sorting mailbox
Reply-To: Eric Warmenhoven <eric@xxxxxxxxxxxxxxx>, 262272@xxxxxxxxxxxxxxx
From: Eric Warmenhoven <eric@xxxxxxxxxxxxxxx>
To: Debian Bug Tracking System <262272@xxxxxxxxxxxxxxx>
Package: mutt
Version: 1.5.6-20040907+3
Followup-For: Bug #262272
This crash happens to me every day, probably three times a day. Finally
I got annoyed and built mutt from debian sources, and put gdb on it:
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
#0 0x080a81fb in find_subject (ctx=0x81da410, cur=0x81fcb58)
at thread.c:428
428 if (tmp != cur && /* don't match the
same message */
(gdb) list
418
419 subjects = make_subject_list (cur, &date);
420
421 while (subjects)
422 {
423 hash = hash_string ((unsigned char *) subjects->data,
424 ctx->subj_hash->nelem);
425 for (ptr = ctx->subj_hash->table[hash]; ptr; ptr = ptr->next)
426 {
427 tmp = ((HEADER *) ptr->data)->thread;
428 if (tmp != cur && /* don't match the same
message */
429 !tmp->fake_thread && /* don't match pseudo
threads */
430 tmp->message->subject_changed && /* only match interesting
replies */
431 !is_descendant (tmp, cur) && /* don't match in the same
thread */
432 (date >= (option (OPTTHREADRECEIVED) ?
433 tmp->message->received :
434 tmp->message->date_sent)) &&
435 (!last ||
436 (option (OPTTHREADRECEIVED) ?
437 (last->message->received < tmp->message->received) :
(gdb) print tmp
$4 = (THREAD *) 0x0
(gdb) bt
#0 0x080a81fb in find_subject (ctx=0x81da410, cur=0x81fcb58)
at thread.c:428
#1 0x080a83ab in pseudo_threads (ctx=0x81da410) at thread.c:499
#2 0x080a8b67 in mutt_sort_threads (ctx=0x81da410, init=1)
at thread.c:952
#3 0x080a6c3a in mutt_sort_headers (ctx=0x81da410, init=1)
at sort.c:287
#4 0x080c8b29 in imap_expunge_mailbox (idata=0x81dbc68) at imap.c:236
#5 0x080c7c95 in imap_cmd_finish (idata=0x81dbc68) at command.c:267
#6 0x080c796a in imap_cmd_step (idata=0x81dbc68) at command.c:153
#7 0x080c7ba8 in imap_exec (idata=0x81dbc68, cmd=0x80e3e22 "EXPUNGE",
flags=0) at command.c:206
#8 0x080ca097 in imap_sync_mailbox (ctx=0x81da410, expunge=1,
index_hint=0x82171a8) at imap.c:1068
#9 0x08086739 in mx_sync_mailbox (ctx=0x81da410,
index_hint=0xbfffdfdc) at mx.c:1210
#10 0x0806574a in mutt_index_menu () at curs_main.c:1030
#11 0x0807c020 in main (argc=1, argv=0xbfffedc4) at main.c:936
Then I went searching through the mutt bug reports and found this one,
so here I am.
Please let me know what else I can do to help. It's obviously a NULL
pointer dereference but I don't know enough about the data structures to
know whether that's the symptom of an even bigger problem. I'm rather
comfortable with gdb, and like I said, get this crash about every three
hours (nine hour work day, three times a day). It always dies with the
status line saying "Sorting mailbox..." and always only for IMAP
mailboxes. I only have one mailbox, period, and it's IMAP (the server is
actually Exchange).
Eric
-- System Information:
Debian Release: 3.1
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.4.20-8
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) (ignored: LC_ALL set to C)
Versions of packages mutt depends on:
ii exim4-daemon-light [mail-tr 4.50-4 lightweight exim MTA (v4) daemon
ii libc6 2.3.2.ds1-20 GNU C Library: Shared libraries an
ii libdb4.2 4.2.52-18 Berkeley v4.2 Database Libraries [
ii libgnutls11 1.0.16-13 GNU TLS library - runtime library
ii libidn11 0.5.13-1.0 GNU libidn library, implementation
ii libncursesw5 5.4-4 Shared libraries for terminal hand
ii libsasl2 2.1.19-1.5 Authentication abstraction library
-- no debconf information
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
----- End forwarded message -----
--
ciao,
Marco