Closed Bug 14285 Opened 25 years ago Closed 25 years ago

CRASH when I hit the reload button in the sidebar

Categories

(SeaMonkey :: MailNews: Message Display, defect, P3)

x86
Linux

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: sspitzer, Assigned: waterson)

References

Details

here's the stack trace

#0  0x4018b343 in PL_HashString (key=0x0) at plhash.c:462
#1  0x4018b178 in PL_HashTableLookup (ht=0x810f448, key=0x0) at plhash.c:343
#2  0x408b8b04 in RDFServiceImpl::GetDataSource (this=0x810bc20, uri=0x0,
aDataSource=0xbfffcb60) at nsRDFService.cpp:1031
#3  0x4015bcac in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libxpcom.so
#4  0x411d099b in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/components/libxpconnect.so
#5  0x411d27fb in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/components/libxpconnect.so
#6  0x40080ade in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#7  0x4008f251 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#8  0x40080b3d in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#9  0x4008f251 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#10 0x40080b3d in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#11 0x4008f251 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#12 0x40080b3d in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#13 0x40080e58 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#14 0x40057a08 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libmozjs.so
#15 0x4040819a in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libjsdom.so
#16 0x40440715 in ?? () from /builds/seth/seamonkey/mozilla/dist/bin/libjsdom.so
#17 0x40c67760 in nsEventListenerManager::HandleEvent (this=0x8660a88,
aPresContext=@0x82a68b0, aEvent=0xbfffefe0, aDOMEvent=0xbfffef64, aFlags=7,
aEventStatus=@0xbffff2f0) at nsEventListenerManager.cpp:621
#18 0x408d0707 in RDFElementImpl::HandleDOMEvent (this=0x8660730,
aPresContext=@0x82a68b0, aEvent=0xbfffefe0, aDOMEvent=0xbfffef64, aFlags=1,
aEventStatus=@0xbffff2f0) at nsRDFElement.cpp:2868
#19 0x40c6b447 in nsEventStateManager::CheckForAndDispatchClick (this=0x8690a48,
aPresContext=@0x82a68b0, aEvent=0xbffff3d0, aStatus=@0xbffff2f0) at
nsEventStateManager.cpp:877
#20 0x40c6a215 in nsEventStateManager::PostHandleEvent (this=0x8690a48,
aPresContext=@0x82a68b0, aEvent=0xbffff3d0, aTargetFrame=0x86a7fa8,
aStatus=@0xbffff2f0, aView=0x82c2788) at nsEventStateManager.cpp:397
#21 0x40caed4e in PresShell::HandleEvent (this=0x82be630, aView=0x82c2788,
aEvent=0xbffff3d0, aEventStatus=@0xbffff2f0) at nsPresShell.cpp:2039
#22 0x411ee943 in nsView::HandleEvent (this=0x82c2788, event=0xbffff3d0,
aEventFlags=28, aStatus=@0xbffff2f0, aHandled=@0xbffff294) at nsView.cpp:827
#23 0x411f8d63 in nsViewManager::DispatchEvent (this=0x82be088,
aEvent=0xbffff3d0, aStatus=@0xbffff2f0) at nsViewManager.cpp:1642
#24 0x411ecaa4 in HandleEvent (aEvent=0xbffff3d0) at nsView.cpp:62
#25 0x40555070 in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#26 0x40554e0c in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#27 0x40555130 in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#28 0x4055602b in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#29 0x40556bb6 in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#30 0x406e279d in ?? () from /usr/lib/libgtk-1.2.so.0
#31 0x406aa037 in ?? () from /usr/lib/libgtk-1.2.so.0
#32 0x406a952f in ?? () from /usr/lib/libgtk-1.2.so.0
#33 0x406a7800 in ?? () from /usr/lib/libgtk-1.2.so.0
#34 0x406da5b8 in ?? () from /usr/lib/libgtk-1.2.so.0
#35 0x4067f1a2 in ?? () from /usr/lib/libgtk-1.2.so.0
#36 0x4067e4da in ?? () from /usr/lib/libgtk-1.2.so.0
#37 0x40721ab2 in ?? () from /usr/lib/libgdk-1.2.so.0
#38 0x4074e2c6 in ?? () from /usr/lib/libglib-1.2.so.0
#39 0x4074e801 in ?? () from /usr/lib/libglib-1.2.so.0
#40 0x4074e979 in ?? () from /usr/lib/libglib-1.2.so.0
#41 0x4067df3a in ?? () from /usr/lib/libgtk-1.2.so.0
#42 0x4053fe49 in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libwidget_gtk.so
#43 0x403b6e91 in ?? () from
/builds/seth/seamonkey/mozilla/dist/bin/libnsappshell.so
#44 0x804b4d7 in main1 (argc=2, argv=0xbffffab4) at nsAppRunner.cpp:591
#45 0x804b759 in main (argc=2, argv=0xbffffab4) at nsAppRunner.cpp:702
#46 0x40288cb3 in ?? () from /lib/libc.so.6
Status: NEW → ASSIGNED
Summary: CRASH when I hit the reload button in the mailnews sidebar → CRASH when I hit the reload button in the sidebar
happens in both mailnews and regular sidebar.  I think I know what's going on
though.

tracking it down now...
Assignee: phil → waterson
Status: ASSIGNED → NEW
reassign to self.
waterson, the problem is that in sidebarOverlay.js we were doing this:

	registry = RDF.GetDataSource(sidebar.db)

but sidebar.db was null.

I've fixed the js to not do that.

here's a patch to the rdf C++ so that it won't pass a null into
PL_HashTableLookup

hopefully 14285 will get fixes, and we'll have all bases covered.

Index: nsRDFService.cpp
===================================================================
RCS file: /cvsroot/mozilla/rdf/base/src/nsRDFService.cpp,v
retrieving revision 1.51
diff -r1.51 nsRDFService.cpp
1031,1032c1031,1036
<         nsIRDFDataSource* cached =
<             NS_STATIC_CAST(nsIRDFDataSource*,
PL_HashTableLookup(mNamedDataSources, uri));
---
>
>         nsIRDFDataSource* cached = nsnull;
>       NS_ASSERTION(uri, "GetDataSource() called with a null uri!");
>       if (uri) {
>               cached = NS_STATIC_CAST(nsIRDFDataSource*,
PL_HashTableLookup(mNamedDataSources, uri));
>       }

I'm going to open a new bug because now hitting reload leave the sidebar blank.
Status: NEW → ASSIGNED
Target Milestone: M11
Makes sense. But I think we should return NS_ERROR_NULL_POINTER if uri ==
nsnull. Lemme add some null-pointer checks into this...
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Ok, added some missing arg checking to nsRDFService.cpp. Good catch, Seth.
Severity: normal → major
QA Contact: lchiang → paulmac
qa contact to paulmac since this crash is in the regular sidebar as well.
*** Bug 14310 has been marked as a duplicate of this bug. ***
Status: RESOLVED → VERIFIED
verified...
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.