Closed
Bug 46979
Opened 24 years ago
Closed 24 years ago
Crash when pressing save button on wallet interview html form
Categories
(SeaMonkey :: General, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
People
(Reporter: morse, Assigned: danm.moz)
References
()
Details
(Keywords: crash)
1. Create fresh profile 2. Start browser 3. Open wallet interview form either by going to the URL noted above or by using the task menu (tasks->privacy->form-manager->interview). Note: it will take a long time for this page to appear and just before it does you will get numerous assertion failures. These are covered in bug 42451 (long delay) and bug 46943 (assertion failures). 4. Press any of the save buttons on the page (there are about a half dozen of them) 5. Following crash will occur nsBrowserInstance::ReinitializeContentVariables() line 402 + 36 bytes nsBrowserInstance::GetContentAreaDocShell() line 413 nsBrowserInstance::CanHandleContent(nsBrowserInstance * const 0x04af45a8, const char * 0x04cb67f0, int 0, const char * 0x1009fc78 gCommonEmptyBuffer, char * * 0x0012d81c, int * 0x0012d648) line 1680 + 13 bytes nsURILoader::ShouldHandleContent(nsIURIContentListener * 0x04af45a8, const char * 0x04cb67f0, int 0, const char * 0x1009fc78 gCommonEmptyBuffer, char * * 0x0012d81c) line 748 nsURILoader::DispatchContent(nsURILoader * const 0x00f7c930, const char * 0x04cb67f0, int 0, const char * 0x1009fc78 gCommonEmptyBuffer, nsIChannel * 0x04cb6b10, nsISupports * 0x00000000, nsIURIContentListener * 0x04af5210, nsISupports * 0x04af3940, char * * 0x0012d81c, nsIURIContentListener * * 0x0012d824, int * 0x0012d814) line 814 + 28 bytes nsDocumentOpenInfo::DispatchContent(nsIChannel * 0x04cb6b10, nsISupports * 0x00000000) line 302 + 165 bytes nsDocumentOpenInfo::OnStartRequest(nsDocumentOpenInfo * const 0x04cb68c0, nsIChannel * 0x04cb6b10, nsISupports * 0x00000000) line 233 + 16 bytes nsCachedChromeChannel::HandleStartLoadEvent(PLEvent * 0x04cb6870) line 510 PL_HandleEvent(PLEvent * 0x04cb6870) line 587 + 10 bytes PL_ProcessPendingEvents(PLEventQueue * 0x04af5ad0) line 528 + 9 bytes _md_EventReceiverProc(HWND__ * 0x01bc086e, unsigned int 49416, unsigned int 0, long 78600912) line 1043 + 9 bytes USER32! 77e71268() 04af5ad0
Reporter | ||
Comment 1•24 years ago
|
||
Crash is occuring on the following line in ReinitializeContentVariables of nsBrowserInstance.cpp. danm and hyatt were the last two people to modify these lines of code. void nsBrowserInstance::ReinitializeContentVariables() { nsCOMPtr<nsIDOMWindow> content; mDOMWindow->Get_content(getter_AddRefs(content)); SetContentWindow(content); } Without understanding what this is used for, I naively fixed this in my own tree by adding the following test around these lines of code. It stopped the crash. Let me know if this is the correct thing to do, in which case I'll check in the fix. void nsBrowserInstance::ReinitializeContentVariables() { if (mDOMWindow) { nsCOMPtr<nsIDOMWindow> content; mDOMWindow->Get_content(getter_AddRefs(content)); SetContentWindow(content); } }
Reporter | ||
Comment 2•24 years ago
|
||
Oops, I forgot to anotate the crash line in the code above. It is the line that reads: mDOMWindow->Get_content(getter_AddRefs(content)); and mDOMWindow is null at this time.
The null mDOMWindow happened because the browser instance created by interview.html JS was never initialized. Browser instances are twitchy, and want to be put to sleep. Don't wanna talk much about the concept of creating a browser instance within a web page ... rrr ... rrr ... but anyway, I've added initialization. Crash gone.
Status: NEW → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•