Re: mutt crash and backtrace
On Mon, 28 Feb 2005, Mads Martin Joergensen wrote:
> Here's a dump from when it often crashes in sync of the mailbox. This is
> when using imap with mutt 1.5.8.
Has this been fixed in 1.5.9 or CVS?
If not, I think we need more information.
(Probably I am unable to help you even if you give
*me* more information. But someone else should be.)
Is it reproduced on non-64bit platforms?
Is it reproduced if your mutt is configure'd
--without-ssl --without-gnutls --disable-hcache?
What sort of crash do you see? Null pointer?
What is the values of ptr, ptr->data,
((HEADER *) ptr->data)->thread,
((HEADER *) ptr->data)->thread->message,
((HEADER *) ptr->data)->thread->message->env,
cur, last, OPTTHREADRECEIVED, last->message,
and subjects?
> #0 0x000000000045a38a in mutt_sort_threads (ctx=0x848310, init=1)
> at thread.c:432
> 432 if (tmp != cur && /* don't match the same
> message */
<snip>
> #9 0x00002aaaab3f900d in __libc_start_main () from /lib64/tls/libc.so.6
<snip>
> Code:
>
> (gdb) l
> 427 hash = hash_string ((unsigned char *) subjects->data,
> 428 ctx->subj_hash->nelem);
> 429 for (ptr = ctx->subj_hash->table[hash]; ptr; ptr = ptr->next)
> 430 {
> 431 tmp = ((HEADER *) ptr->data)->thread;
> 432 if (tmp != cur && /* don't match the same
> message */
> 433 !tmp->fake_thread && /* don't match pseudo
> threads */
> 434 tmp->message->subject_changed && /* only match interesting
> replies */
> 435 !is_descendant (tmp, cur) && /* don't match in the same
> thread */
> 436 (date >= (option (OPTTHREADRECEIVED) ?
Wow, this "if" is too long to debug!
Maybe we should split it.
--
tamo