<<< Date Index >>>     <<< Thread Index >>>

Re: crash in imap_expunge_mailbox (similar to #2175)



I've just put a couple of patches into CVS that I hope may alleviate
this particular problem. They prevent mutt from reopening a mailbox
if it's already in the middle of opening it, and they ignore
out-of-order FETCH responses (usually FLAGS updates) if they appear
before the corresponding message headers have loaded.

I'd appreciate it if people experiencing this or similar bugs could
test CVS -- I think Thomas is eager to release 1.5.13 soon...

On Sunday, 12 March 2006 at 21:15, Kyle Wheeler wrote:
> On Tuesday, March  7 at 01:26 PM, quoth Brendan Cully:
> >I don't think these are the way to go. If a header is missing, that's
> >a symptom of worse trouble. I think it's the flag handler getting
> >confused by flags for different messages in imap_open_mailbox. I'm
> >expecting that before these crashes somewhere in .muttdebug you're
> >seeing some kind of 'uid out of sync' message. Will try to take a look
> >later today - RL has been kind of crazy lately...
> 
> Okay… I’m posting this just to give you extra forensic information for 
> tracking down the bug. Maybe it’s useful, maybe it isn’t:
> 
> (gdb) bt
> #0  0x000dcdf4 in cmd_parse_fetch (idata=0x1141510, s=0x182b602 "362 FETCH 
> (UID 610 FLAGS (\\Seen \\Answered \\Recent) INTERNALDATE \"13-Mar-2006 
> 01:24:27 +0000\" RFC822.SIZE 1460 BODY[HEADER.FIELDS (\"DATE\" \"FROM\" 
> \"SUBJECT\" \"TO\" \"CC\" \"MESSAGE-ID\" \"REFERENCES\" \"CONTENT-T"...) at 
> command.c:536
> #1  0x000dc598 in cmd_handle_untagged (idata=0x1141510) at command.c:415
> #2  0x000db980 in imap_cmd_step (idata=0x1141510) at command.c:170
> #3  0x000d7ebc in imap_read_headers (idata=0x1141510, msgbegin=359, 
> msgend=362) at message.c:248
> #4  0x000dbeb8 in imap_cmd_finish (idata=0x1141510) at command.c:283
> #5  0x000d3b8c in imap_check_mailbox (ctx=0x114c0c0, index_hint=0xbfffeacc, 
> force=0) at imap.c:1373
> #6  0x00066520 in mx_check_mailbox (ctx=0x114c0c0, index_hint=0xbfffeacc, 
> lock=0) at mx.c:1367
> #7  0x000255e0 in mutt_index_menu () at curs_main.c:608
> #8  0x000547ac in main (argc=1, argv=0xbffff4dc) at main.c:966
> (gdb) p *(idata->ctx)
> $5 = {
>  path = 0x1148560 "imaps://kyle@xxxxxxxxxxxxxxxxxxx/INBOX/Family", 
>  fp = 0x0, 
>  mtime = 0, 
>  mtime_cur = 0, 
>  size = 0, 
>  vsize = 22314602, 
>  pattern = 0x15170a0 "~C kieran | ~f kieran", 
>  limit_pattern = 0x13f9eb0, 
>  hdrs = 0x18b1600, 
>  last_tag = 0x0, 
>  tree = 0x13f7960, 
>  id_hash = 0x0, 
>  subj_hash = 0x1509d80, 
>  thread_hash = 0x1148590, 
>  v2r = 0x18b1c00, 
>  hdrmax = 384, 
>  msgcount = 363, 
>  vcount = 135, 
>  tagged = 0, 
>  new = 0, 
>  unread = 0, 
>  deleted = 0, 
>  flagged = 0, 
>  msgnotreadyet = -1, 
>  data = 0x1141510, 
>  magic = 5, 
>  locked = 0, 
>  changed = 0, 
>  readonly = 0, 
>  dontwrite = 0, 
>  append = 0, 
>  quiet = 0, 
>  collapsed = 0, 
>  closing = 0
> }
> (gdb) p msgno
> $6 = 362
> (gdb) p cur
> $7 = 361
> 
> ~Kyle


Attachment: pgpldMyasALYz.pgp
Description: PGP signature