Crash in [@ InvalidArrayIndex_CRASH | nsImapMailFolder::CopyNextStreamMessage]
Categories
(Thunderbird :: General, defect)
Tracking
(thunderbird_esr78 unaffected, thunderbird85 affected)
Tracking | Status | |
---|---|---|
thunderbird_esr78 | --- | unaffected |
thunderbird85 | --- | affected |
People
(Reporter: wsmwk, Assigned: benc)
References
(Regression)
Details
(Keywords: crash, regression, topcrash-thunderbird)
Crash Data
Attachments
(3 files, 2 obsolete files)
8.35 KB,
patch
|
mkmelin
:
review+
|
Details | Diff | Splinter Review |
7.64 KB,
patch
|
mkmelin
:
review+
|
Details | Diff | Splinter Review |
9.72 KB,
patch
|
mkmelin
:
review+
|
Details | Diff | Splinter Review |
regression?
Crash report: https://crash-stats.mozilla.org/report/index/d51cfd8a-e831-4a77-91a5-6fb9b0201210 - 85.0a1 buildid 20201209104855 is the first crash. Also crashing in beta bp-87f4ec6c-b365-48e8-8f05-617310201220
MOZ_CRASH Reason: ElementAt(aIndex = 0, aLength = 0)
Top 10 frames of crashing thread:
0 xul.dll InvalidArrayIndex_CRASH xpcom/ds/nsTArray.cpp:28
1 xul.dll nsImapMailFolder::CopyNextStreamMessage comm/mailnews/imap/src/nsImapMailFolder.cpp:6214
2 xul.dll `anonymous namespace'::SyncRunnable2<nsIImapMailFolderSink, bool, nsISupports*>::Run comm/mailnews/imap/src/nsSyncRunnableHelpers.cpp:121
3 xul.dll mozilla::RunnableTask::Run xpcom/threads/TaskController.cpp:452
4 xul.dll mozilla::TaskController::DoExecuteNextTaskOnlyMainThreadInternal xpcom/threads/TaskController.cpp:732
5 xul.dll mozilla::TaskController::ExecuteNextTaskOnlyMainThreadInternal xpcom/threads/TaskController.cpp:591
6 xul.dll mozilla::TaskController::ProcessPendingMTTask xpcom/threads/TaskController.cpp:375
7 xul.dll mozilla::detail::RunnableFunction<`lambda at /builds/worker/checkouts/gecko/xpcom/threads/TaskController.cpp:122:7'>::Run xpcom/threads/nsThreadUtils.h:534
8 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1200
9 xul.dll NS_ProcessNextEvent xpcom/threads/nsThreadUtils.cpp:548
Reporter | ||
Comment 1•4 years ago
|
||
#8 crash for beta 85
Comment 2•4 years ago
|
||
Crash at https://searchfox.org/comm-central/rev/290abc2f4584c108051881abef139fcc243b92ae/mailnews/imap/src/nsImapMailFolder.cpp#6214
Yes, regression from bug 1612239 - https://hg.mozilla.org/comm-central/rev/c2ddbcc4f197#l28.175. Some logic error. Ben, please have a look.
Comment 3•4 years ago
|
||
Assignee | ||
Comment 4•4 years ago
|
||
Assignee | ||
Comment 5•4 years ago
|
||
This one removes a bunch of redundant QIs in the copy code. Not strictly required, but less code is always good :-)
Assignee | ||
Comment 6•4 years ago
|
||
This one should provide the actual bugfix. Sidesteps the issue of m_totalCount getting out of sync by just removing m_totalCount altogether.
Assignee | ||
Comment 7•4 years ago
|
||
And I noticed that the currently-being-processed message had it's own pointer (m_message), which really isn't required, so this removes it.
This set of patches passes the unit tests locally just fine, so I'm pretty confident of them. But will be nice to see how the mochitests fare in the try run...
Assignee | ||
Comment 8•4 years ago
|
||
How odd. The mac build required a little (uint32_t) cast that windows and linux did not...
Seems OK now:
Comment 9•4 years ago
|
||
Comment 10•4 years ago
|
||
Updated•4 years ago
|
Comment 11•4 years ago
|
||
Pushed by mkmelin@iki.fi:
https://hg.mozilla.org/comm-central/rev/097774940250
Tidy away some unnecessary QI casting in nsImapMailFolder message copying. r=mkmelin
https://hg.mozilla.org/comm-central/rev/eaf78ae76ba0
Remove redundant m_totalCount member from nsImapMailCopyState. r=mkmelin
https://hg.mozilla.org/comm-central/rev/ecee47190351
Remove redundant m_message member from nsImapMailCopyState. r=mkmelin
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Description
•