Closed
Bug 46979
Opened 25 years ago
Closed 25 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•25 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•25 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: 25 years ago
Resolution: --- → FIXED
Updated•21 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•