Closed Bug 20171 Opened 25 years ago Closed 25 years ago

View source broken when sidebar is on

Categories

(SeaMonkey :: Sidebar, defect, P3)

x86
Linux
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: rzach, Assigned: slamm)

Details

When the sidebar is on, view source works only intermittently. When selecting view source, a blank browser window (menu bar only) is displayed, but not the source. Sometimes opening a menu and running over the selections will result in the source being displayed. When the sidebar is turned off it works fine. To reproduce: 1. Make sure the sidebar is displayed (select in View|Sidebar) 2. Select View | Page Source Actual results: A browser window with menu bar is opened; the source is not displayed. Expected results: The source should be displayed. Observed on: Linux build 1999112708
I don't remember if the last nightly build had the sidebar setting for browser and source view be the same; the two are separate on today's build 1999.11.29.08. So amend the instructions below as follows: 1. Open a browser window 2. View | View Source 3. Selece View | Sidebar 4. Close source view 5. View | View Source Actual result: empty window Expected result: source should be displayed
Assignee: leger → slamm
Component: Browser-General → Sidebar
Changing component to Sidebar and reassigning.
Status: NEW → ASSIGNED
Target Milestone: M15
Yep. Pretty strange. Probably need to change how "view/page souce" finds the document.
QA Contact: leger → paulmac
Updating QA Contact
changing sairuh to qa contact, I am seeing strange things with view source working with sidebar closed and crashing with sidebar open... sairuh, please investigate, thanks
Basically trapping in nsDocLoaderImpl::LoadDocument trying to assign the return from pURILoader->OpenURIinto mLoadGroup via do_QueryInterface. The problem is that mLoadGroup has already been destroyed. Here is the call stack from the trap: nsCOMPtr<nsILoadGroup>::assign_assuming_AddRef() line 415 + 3 bytes nsCOMPtr<nsILoadGroup>::assign_from_helper() line 771 nsCOMPtr<nsILoadGroup>::operator=() line 535 nsDocLoaderImpl::LoadDocument() line 614 nsWebShell::DoLoadURL() line 1786 + 57 bytes nsWebShell::LoadURI() line 1952 + 34 bytes nsWebShell::LoadURL() line 2130 + 52 bytes nsWebShell::LoadURL() line 1602 nsHTMLFrameInnerFrame::Reflow() line 878 + 63 bytes nsContainerFrame::ReflowChild() line 621 + 31 bytes nsHTMLFrameOuterFrame::Reflow() line 369 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsContainerFrame::ReflowChild() line 621 + 31 bytes RootFrame::Reflow() line 331 nsContainerFrame::ReflowChild() line 621 + 31 bytes ViewportFrame::Reflow() line 527 nsHTMLReflowCommand::Dispatch() line 145 PresShell::ProcessReflowCommands() line 1765 PresShell::ExitReflowLock() line 821 PresShell::AttributeChanged() line 2192 nsXULDocument::AttributeChanged() line 1318 nsGenericHTMLElement::UnsetAttribute() line 846 nsHTMLIFrameElement::UnsetAttribute() line 89 + 26 bytes nsGenericElement::RemoveAttribute() line 441 + 28 bytes nsHTMLIFrameElement::RemoveAttribute() line 55 + 18 bytes ElementRemoveAttribute() line 312 + 19 bytes js_Invoke() line 665 + 26 bytes js_Interpret() line 2226 + 15 bytes js_Invoke() line 681 + 13 bytes js_Interpret() line 2226 + 15 bytes js_Invoke() line 681 + 13 bytes js_InternalCall() line 758 + 15 bytes JS_CallFunctionValue() line 2752 + 29 bytes nsJSContext::CallEventHandler() line 547 + 33 bytes nsJSDOMEventListener::HandleEvent() line 86 + 36 bytes nsEventListenerManager::HandleEventSubType() line 651 + 19 bytes nsEventListenerManager::HandleEvent() line 1197 + 31 bytes GlobalWindowImpl::HandleDOMEvent() line 2974 nsWebShell::OnEndDocumentLoad() line 3019 + 34 bytes nsDocLoaderImpl::FireOnEndDocumentLoad() line 1090 nsDocLoaderImpl::DocLoaderIsEmpty() line 981 nsDocLoaderImpl::DocLoaderIsEmpty() line 984 nsDocLoaderImpl::OnStopRequest() line 920 nsLoadGroup::RemoveChannel() line 531 + 42 bytes nsInputStreamChannel::OnStopRequest() line 354 nsOnStopRequestEvent::HandleEvent() line 279 nsStreamListenerEvent::HandlePLEvent() line 93 + 12 bytes PL_HandleEvent() line 522 + 10 bytes PL_ProcessPendingEvents() line 483 + 9 bytes _md_EventReceiverProc() line 947 + 9 bytes USER32! 77e71268() 00c67230() trapping on return from do_QueryInterface when trying to assign it into mLoadGroup (which has been deleted). Here is call chain where the deletion happens: memset() line 108 _free_dbg_lk() line 1082 + 28 bytes _free_dbg() line 970 + 13 bytes operator delete() line 49 + 16 bytes nsDocLoaderImpl::`scalar deleting destructor'() + 37 bytes nsDocLoaderImpl::Release() line 358 + 138 bytes nsWebShell::~nsWebShell() line 665 + 18 bytes nsWebShell::`scalar deleting destructor'() + 15 bytes nsWebShell::Release() line 764 + 137 bytes nsCOMPtr<nsIURIContentListener>::~nsCOMPtr<nsIURIContentListener>() line 434 nsDocumentOpenInfo::~nsDocumentOpenInfo() line 107 + 34 bytes nsDocumentOpenInfo::`scalar deleting destructor'() + 15 bytes nsDocumentOpenInfo::Release() line 92 + 131 bytes nsURILoader::OpenURIWithPostDataVia() line 419 + 12 bytes nsURILoader::OpenURIVia() line 376 nsURILoader::OpenURI() line 362 nsDocLoaderImpl::LoadDocument() line 609 + 84 bytes nsWebShell::DoLoadURL() line 1786 + 57 bytes nsWebShell::LoadURI() line 1952 + 34 bytes nsWebShell::LoadURL() line 2130 + 52 bytes nsWebShell::LoadURL() line 1602 nsHTMLFrameInnerFrame::Reflow() line 878 + 63 bytes nsContainerFrame::ReflowChild() line 621 + 31 bytes nsHTMLFrameOuterFrame::Reflow() line 369 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsBoxFrame::FlowChildAt() line 1125 nsBoxFrame::FlowChildren() line 673 nsBoxFrame::Reflow() line 569 nsContainerFrame::ReflowChild() line 621 + 31 bytes RootFrame::Reflow() line 331 nsContainerFrame::ReflowChild() line 621 + 31 bytes ViewportFrame::Reflow() line 527 nsHTMLReflowCommand::Dispatch() line 145 PresShell::ProcessReflowCommands() line 1765 PresShell::ExitReflowLock() line 821 PresShell::AttributeChanged() line 2192 nsXULDocument::AttributeChanged() line 1318 nsGenericHTMLElement::UnsetAttribute() line 846 nsHTMLIFrameElement::UnsetAttribute() line 89 + 26 bytes nsGenericElement::RemoveAttribute() line 441 + 28 bytes nsHTMLIFrameElement::RemoveAttribute() line 55 + 18 bytes ElementRemoveAttribute() line 312 + 19 bytes js_Invoke() line 665 + 26 bytes js_Interpret() line 2226 + 15 bytes js_Invoke() line 681 + 13 bytes js_Interpret() line 2226 + 15 bytes js_Invoke() line 681 + 13 bytes js_InternalCall() line 758 + 15 bytes JS_CallFunctionValue() line 2752 + 29 bytes nsJSContext::CallEventHandler() line 547 + 33 bytes nsJSDOMEventListener::HandleEvent() line 86 + 36 bytes nsEventListenerManager::HandleEventSubType() line 651 + 19 bytes nsEventListenerManager::HandleEvent() line 1197 + 31 bytes GlobalWindowImpl::HandleDOMEvent() line 2974 nsWebShell::OnEndDocumentLoad() line 3019 + 34 bytes nsDocLoaderImpl::FireOnEndDocumentLoad() line 1090 nsDocLoaderImpl::DocLoaderIsEmpty() line 981 nsDocLoaderImpl::DocLoaderIsEmpty() line 984 nsDocLoaderImpl::OnStopRequest() line 920 nsLoadGroup::RemoveChannel() line 531 + 42 bytes nsInputStreamChannel::OnStopRequest() line 354 nsOnStopRequestEvent::HandleEvent() line 279 nsStreamListenerEvent::HandlePLEvent() line 93 + 12 bytes PL_HandleEvent() line 522 + 10 bytes PL_ProcessPendingEvents() line 483 + 9 bytes _md_EventReceiverProc() line 947 + 9 bytes USER32! 77e71268() 00c6 I am not all that familiar with the code, but it seems pretty clear that the nsWebShell shouldn't be getting deleted while it is still in use like this.
possibly a duplicate of 20691 though the trace is different
i don't see this happening anymore, marking worksforme
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → WORKSFORME
On Linux build 2000.01.30.09, I get: With Sidebar on: View | Page Source gives a blank window (grey, menu bar only) With Sidebar off: View | Page Source doesn't work at all. No Window is opened, console outputs: BrowserViewSource(); we don't handle eBorderStyle_close yet... please fix me WEBSHELL+ = 8 assuming d&d is off for Navigator WEBSHELL+ = 9
Status: RESOLVED → REOPENED
yes, this seems to have regressed since m13 went out
Resolution: WORKSFORME → ---
Ok, it's working again on Linux build 2000.01.31.14.
Status: REOPENED → RESOLVED
Closed: 25 years ago25 years ago
Resolution: --- → FIXED
yep, looks fine now using today's linux comm bits. verif.
Status: RESOLVED → VERIFIED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.