Closed Bug 12476 Opened 21 years ago Closed 11 years ago

[NEWS] assert if duplicate lines in newsrc file

Categories

(MailNews Core :: Backend, defect, P2)

x86
Other
defect

Tracking

(Not tracked)

RESOLVED WORKSFORME
Future

People

(Reporter: phil, Unassigned)

References

Details

1. Migrated my 4.x profile using apprunner -installer
2. Launched mail/news from the task bar
3. Asserted in news code with this stack trace:

NTDLL! 77f7629c()
nsDebug::Assertion(const char * 0x06798354, const char * 0x06798344, const char * 0x06798310, int 0x00000187) line 176 + 13 bytes
nsNewsDatabase::SetUnreadSet(nsNewsDatabase * const 0x0680de98, char * 0x0696280c) line 391 + 35 bytes
nsMsgNewsFolder::SetUnreadSetStr(nsMsgNewsFolder * const 0x0680973c, char * 0x0696280c) line 1400 + 27 bytes
nsMsgNewsFolder::AddSubfolder(nsAutoString {...}, nsIMsgFolder * * 0x0012d69c, char * 0x0696280c) line 262 + 36 bytes
nsMsgNewsFolder::HandleLine(char * 0x069627e0, unsigned int 0x0000002f) line 1261 + 59 bytes
nsMsgLineBuffer::ConvertAndSendBuffer() line 244 + 58 bytes
nsMsgLineBuffer::BufferInput(const char * 0x069625f8, int 0x000001a0) line 177 + 8 bytes
nsMsgNewsFolder::LoadNewsrcFileAndCreateNewsgroups(nsFileSpec & {...}) line 1176 + 35 bytes
nsMsgNewsFolder::CreateSubFolders(nsFileSpec & {...}) line 204 + 12 bytes
nsMsgNewsFolder::GetSubFolders(nsMsgNewsFolder * const 0x0672517c, nsIEnumerator * * 0x0012d854) line 357 + 15 bytes
nsMsgFolderDataSource::createFolderChildNode(nsIMsgFolder * 0x0672517c, nsIRDFNode * * 0x0012d934) line 942 + 36 bytes
nsMsgFolderDataSource::createFolderNode(nsIMsgFolder * 0x0672517c, nsIRDFResource * 0x02654c10, nsIRDFNode * * 0x0012d934) line 761 + 16 bytes
nsMsgFolderDataSource::GetTarget(nsMsgFolderDataSource * const 0x05a92890, nsIRDFResource * 0x06725170, nsIRDFResource * 0x02654c10, int 0x00000001, nsIRDFNode * * 0x0012d934) line 212 + 25 bytes
CompositeDataSourceImpl::GetTarget(CompositeDataSourceImpl * const 0x06709340, nsIRDFResource * 0x06725170, nsIRDFResource * 0x02654c10, int 0x00000001, nsIRDFNode * * 0x0012d934) line 734 + 28 bytes
RDFGenericBuilderImpl::IsEmpty(nsIContent * 0x067c7330, nsIRDFResource * 0x06725170) line 2673 + 65 bytes
RDFGenericBuilderImpl::BuildContentFromTemplate(nsIContent * 0x06726810, nsIContent * 0x06726780, int 0x00000000, nsIRDFResource * 0x06725170, int 0xffffffff, int 0x00000000) line 1835 + 24 bytes
RDFGenericBuilderImpl::BuildContentFromTemplate(nsIContent * 0x06726cd0, nsIContent * 0x06709490, int 0x00000001, nsIRDFResource * 0x06725170, int 0x00000007, int 0x00000000) line 1823 + 41 bytes
RDFGenericBuilderImpl::CreateWidgetItem(nsIContent * 0x06709490, nsIRDFResource * 0x02654c10, nsIRDFResource * 0x06725170, int 0x00000007, int 0x00000000) line 2028 + 35 bytes
RDFGenericBuilderImpl::CreateContainerContents(nsIContent * 0x06709490, nsIRDFResource * 0x05a91410) line 2323 + 53 bytes
RDFGenericBuilderImpl::CreateContents(RDFGenericBuilderImpl * const 0x0670afd0, nsIContent * 0x06709490) line 490 + 21 bytes
RDFGenericBuilderImpl::RemoveAndRebuildGeneratedChildren(nsIContent * 0x06709490) line 2999 + 16 bytes
RDFGenericBuilderImpl::OnSetAttribute(RDFGenericBuilderImpl * const 0x0670afdc, nsIDOMElement * 0x06709480, const nsString & {...}, const nsString & {...}) line 1315 + 20 bytes
XULDocumentImpl::OnSetAttribute(XULDocumentImpl * const 0x065f1078, nsIDOMElement * 0x06709480, const nsString & {...}, const nsString & {...}) line 3757
RDFElementImpl::SetAttribute(RDFElementImpl * const 0x06709480, const nsString & {...}, const nsString & {...}) line 1099
nsXULTreeElement::SetAttribute(nsXULTreeElement * const 0x0670d7c8, const nsString & {...}, const nsString & {...}) line 46 + 29 bytes
ElementSetAttribute(JSContext * 0x065f3b20, JSObject * 0x046358d0, unsigned int 0x00000002, long * 0x04623efc, long * 0x0012e91c) line 261 + 23 bytes
js_Invoke(JSContext * 0x065f3b20, unsigned int 0x00000002, unsigned int 0x00000000) line 654 + 26 bytes
js_Interpret(JSContext * 0x065f3b20, long * 0x0012f148) line 2228 + 15 bytes
js_Invoke(JSContext * 0x065f3b20, unsigned int 0x00000001, unsigned int 0x00000000) line 670 + 13 bytes
js_Interpret(JSContext * 0x065f3b20, long * 0x0012f930) line 2228 + 15 bytes
js_Invoke(JSContext * 0x065f3b20, unsigned int 0x00000001, unsigned int 0x00000002) line 670 + 13 bytes
js_InternalCall(JSContext * 0x065f3b20, JSObject * 0x045fe0d0, long 0x04635818, unsigned int 0x00000001, long * 0x0012fa94, long * 0x0012faa0) line 747 + 15 bytes
JS_CallFunctionValue(JSContext * 0x065f3b20, JSObject * 0x045fe0d0, long 0x04635818, unsigned int 0x00000001, long * 0x0012fa94, long * 0x0012faa0) line 2643 + 29 bytes
nsJSEventListener::HandleEvent(nsIDOMEvent * 0x0671b850) line 110 + 40 bytes
nsEventListenerManager::HandleEvent(nsIPresContext & {...}, nsEvent * 0x0012fcd8, nsIDOMEvent * * 0x0012fbd4, unsigned int 0x00000003, nsEventStatus & nsEventStatus_eIgnore) line 967 + 21 bytes
GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x065f3ce4, nsIPresContext & {...}, nsEvent * 0x0012fcd8, nsIDOMEvent * * 0x0012fbd4, unsigned int 0x00000001, nsEventStatus & nsEventStatus_eIgnore) line 2814
nsWebShell::OnEndDocumentLoad(nsWebShell * const 0x065e4ce4, nsIDocumentLoader * 0x065e4990, nsIChannel * 0x065e5870, unsigned int 0x00000000, nsIDocumentLoaderObserver * 0x065e4ce4) line 3238 + 34 bytes
nsDocLoaderImpl::FireOnEndDocumentLoad(nsIDocumentLoader * 0x065e4990, unsigned int 0x00000000) line 1120
nsDocLoaderImpl::OnStopRequest(nsDocLoaderImpl * const 0x065e4994, nsIChannel * 0x066ad070, nsISupports * 0x00000000, unsigned int 0x00000000, const unsigned short * 0x00000000) line 1027
nsOnStopRequestEvent::HandleEvent(nsOnStopRequestEvent * const 0x0670f470) line 269
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x0670f474) line 144 + 12 bytes
PL_HandleEvent(PLEvent * 0x0670f474) line 509 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00ade100) line 470 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x03450210, unsigned int 0x0000c0f7, unsigned int 0x00000000, long 0x00ade100) line 932 + 9 bytes
USER32! 77e71820()
00ade100()
I was able to work around this by deleting the newsrc file for prey.mcom.com. Of
course, the old version is still available for debugging in my 4.x profile.
Status: NEW → ASSIGNED
Summary: Launch mail/news after profile migration asserts in news → [NEWS] assert if duplicate lines in newsrc file
Target Milestone: M12
changing summary to reflect the real problem.

the problem is phil has duplicate lines in his newsrc file:

you'd get the same assert if your newsrc had this:

foo: 1-2
foo: 4-10

I need to look at 4.5 and see how we handles this, and duplicate the logic in
5.0, and avoid the assert.

accepting.
davidmc and ppandit, I think this is what you are seeing in bug #13622

adding jefft to the cc list, since he's seen it too.
Par - take a look at the other bug to see if the duplicate lines is the cause of
the problem you reported - if so, we should mark the other bug a dup of this
one. Thanks.
Blocks: 11091
(target milestone is M11 or M12 - add to mail beta tracking bug)
*** Bug 12478 has been marked as a duplicate of this bug. ***
Target Milestone: M12 → M13
Target Milestone: M13 → M14
M15
Target Milestone: M14 → M15
moving to m16.
Target Milestone: M15 → M16
Triage to M17.  Please add beta2 keyword if this must make beta2.  Please let me 
know if this must be done by M16 feature freeze.
Target Milestone: M16 → M17
moving to future milestone.
Target Milestone: M17 → Future
QA Contact: lchiang → stephend
Product: MailNews → Core
sorry for the spam.  making bugzilla reflect reality as I'm not working on these bugs.  filter on FOOBARCHEESE to remove these in bulk.
Assignee: sspitzer → nobody
Status: ASSIGNED → NEW
Filter on "Nobody_NScomTLD_20080620"
QA Contact: stephend → backend
Product: Core → MailNews Core
No assertion for me.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.