> This sounds a *lot* like the bug I fixed right before release. And if > thats the case, delivering message to the folder is also highly likely to > fix the problem.
Hmmm, is it a variation on the same bug perhaps? > > Program received signal SIGSEGV, Segmentation fault. > > 0x08074b41 in mailbox_expunge (mailbox=0x81349a0, iscurrentdir=1, > > decideproc=0, deciderock=0x0) at mailbox.c:2018 > > 2018 cacheitem = CACHE_ITEM_NEXT(cacheitem); > > This, uh, doesn't line up with the line numbers in my mailbox.c. 1.151 is the 2.2.3 release version. Hmmm, I wanted to show that the line numbers were correct, but the 'annotate' doesn't seem to work in cvsweb... https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/cyrus/imap/mailbox.c?annotate=1.151 If I just download it instead: https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/~checkout~/src/cyrus/imap/mailbox.c?rev=1.151&content-type=text/plain And go to line 2018, it seems to be the correct line number... > > 2016 cacheitembegin = cacheitem = mailbox->cache_base + > > cache_offset; > > 2017 for(cache_ent = 0; cache_ent < NUM_CACHE_FIELDS; > > cache_ent++) { > > 2018 cacheitem = CACHE_ITEM_NEXT(cacheitem); > > 2019 } > > Though this code looks correct. > > OOC, what is the value of cache_ent when you crash? Was in my original post... (gdb) p cache_ent $5 = 1 This value seems odd though... $3 = 4294961280 (gdb) p cacheitembegin Isn't that (unsigned)-6016. Should this ever be negative? (gdb) p mailbox->cache_base $2 = 0x41456000 "A" (gdb) p cache_offset $3 = 4294961280 (gdb) p cacheitembegin $4 = 0x41454880 "\030\224ÿÿ\211EØ\203Ä\020\205À\017\204\226þÿÿ\203ì\fWè±\223ÿÿ\211EÔ\203Ä\02 0\205À\017\204\177þÿÿ\215´&" (gdb) p cache_ent $5 = 1 (gdb) p *mailbox $6 = {header_fd = 11, index_fd = 12, cache_fd = 13, header_base = 0x4129e000 "¡\002\213\rCyrus mailbox header\n\"The best thing about this system was that it had lots of goals.\"\n\t--Jim Morris on Andrew\nuser.*username*\t6da7138e3f13bdc2\n\n*username*\tlrswipcda\tadmin\tl rswipcda\t"..., header_len = 210, index_base = 0x41445000 "A", index_len = 16384, cache_base = 0x41456000 "A", cache_len = 16384, cache_size = 5164, header_lock_count = 1, index_lock_count = 1, seen_lock_count = 0, pop_lock_count = 1, header_ino = 4328652, index_mtime = 1074665767, index_ino = 4388307, index_size = 856, name = 0x814ded8 "user.*username*", path = 0x814def8 "/var/spool/imap/i/user/*username*", acl = 0x8155508 "*username*\tlrswipcda\tadmin\tlrswipcda\tanyone\tp\t", myrights = 511, uniqueid = 0x81556e8 "6da7138e3f13bdc2", flagname = {0x0 <repeats 128 times>}, generation_no = 1090519040, format = 0, minor_version = 6, start_offset = 76, record_size = 60, exists = 13, last_appenddate = 1074665664, last_uid = 78, quota_mailbox_used = 2761812, pop3_last_login = 0, uidvalidity = 1058258370, deleted = 2, answered = 0, flagged = 0, dirty = 0, pop3_new_uidl = 1, leaked_cache_records = 1967064584, spares = {0, 0}, quota = {fd = 15, lock_count = 0, root = 0x8155548 "user.*username*", used = 10693530, limit = 50000}} Rob