Closed Bug 137556 Opened 22 years ago Closed 22 years ago

SetContentState() throws assertion when typing over a selection.

Categories

(Core :: DOM: UI Events & Focus Handling, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: kinmoz, Assigned: dbaron)

Details

Attachments

(1 file)

I'm hitting this assertion quite a bit, to the point where it's annoying me as 
I use my TRUNK debug build for dogfood:


###!!! ASSERTION: different documents: 'oldAncestor == newAncestor', file y:\moz
illa\content\events\src\nsEventStateManager.cpp, line 3474
###!!! Break: at file y:\mozilla\content\events\src\nsEventStateManager.cpp, lin
e 3474


I did a CVS blame on nsEventStateManager::SetContentState() and it looks like 
this assertion:


  NS_ASSERTION(oldAncestor == newAncestor, "different documents");


was added by dbaron in rev 1.344 of the file.

I see this assertion when I click in the URL bar and it auto-selects all of it's 
contents and then I type something. I also see it in any textfield on a page, 
where I've double or triple clicked to select all of the content, and then type 
(like in the various bugzilla pages).

Here's the stack when it gets triggered:


NTDLL! 77fa018c()
nsDebug::Assertion(const char * 0x014b6c5c, const char * 0x014b6c40, const char 
* 0x014b6c08, int 3474) line 291 + 13 bytes
nsEventStateManager::SetContentState(nsEventStateManager * const 0x02c6ee28, 
nsIContent * 0x0347ecc8, int 4) line 3474 + 46 bytes
nsEventStateManager::PostHandleEvent(nsEventStateManager * const 0x02c6ee28, 
nsIPresContext * 0x01b5d668, nsEvent * 0x0012f8cc, nsIFrame * 0x035d0674, 
nsEventStatus * 0x0012f718, nsIView * 0x01ac5490) line 1939
PresShell::HandleEventInternal(nsEvent * 0x0012f8cc, nsIView * 0x01ac5490, 
unsigned int 1, nsEventStatus * 0x0012f718) line 6109 + 43 bytes
PresShell::HandleEvent(PresShell * const 0x01ac5b1c, nsIView * 0x01ac5490, 
nsGUIEvent * 0x0012f8cc, nsEventStatus * 0x0012f718, int 1, int & 1) line 6012 + 
25 bytes
nsViewManager::HandleEvent(nsView * 0x01ac5490, nsGUIEvent * 0x0012f8cc, int 0) 
line 2030
nsView::HandleEvent(nsViewManager * 0x01b5df28, nsGUIEvent * 0x0012f8cc, int 0) 
line 306
nsViewManager::DispatchEvent(nsViewManager * const 0x01b5df28, nsGUIEvent * 
0x0012f8cc, nsEventStatus * 0x0012f83c) line 1881 + 23 bytes
HandleEvent(nsGUIEvent * 0x0012f8cc) line 83
nsWindow::DispatchEvent(nsWindow * const 0x01ac553c, nsGUIEvent * 0x0012f8cc, 
nsEventStatus & nsEventStatus_eIgnore) line 865 + 10 bytes
nsWindow::DispatchWindowEvent(nsGUIEvent * 0x0012f8cc) line 886
nsWindow::DispatchKeyEvent(unsigned int 131, unsigned short 118, unsigned int 0, 
long 0) line 2659 + 15 bytes
nsWindow::OnChar(unsigned int 22, unsigned int 0, unsigned char 0) line 2810
nsWindow::ProcessMessage(unsigned int 258, unsigned int 22, long 3080193, long * 
0x0012fcec) line 3448 + 33 bytes
nsWindow::WindowProc(HWND__ * 0x000504de, unsigned int 258, unsigned int 22, 
long 3080193) line 1130 + 27 bytes
USER32! 77e12e98()
USER32! 77e130e0()
USER32! 77e15824()
nsAppShellService::Run(nsAppShellService * const 0x019653d8) line 309
main1(int 2, char * * 0x00307380, nsISupports * 0x00000000) line 1414 + 32 bytes
main(int 2, char * * 0x00307380) line 1762 + 37 bytes
mainCRTStartup() line 338 + 17 bytes
Start with dbaron since cvs blame shows his name next to the assertion.
Assignee: joki → dbaron
QA Contact: madhur → rakeshmishra
This might have something to do with XBL anonymous content.  Perhaps I should
just change ot to NS_WARN_IF_FALSE for now.  (That doesn't throw a dialog on
Windows, right?)
If it's consistent with the NS_WARNING macro, it shouldn't throw up a dialog on
windows, but the NS_WARNING_IF seems to call a slightly different function.
Comment on attachment 80005 [details] [diff] [review]
patch

sr=kin@netscape.com

Yup, this fixes the assertion I was seeing when editing textfields.
Attachment #80005 - Flags: superreview+
Comment on attachment 80005 [details] [diff] [review]
patch

r=bryner
Attachment #80005 - Flags: review+
Fix checked in 2002-04-20 05:36 PDT.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
QA Contact: rakeshmishra → trix
Component: Event Handling → User events and focus handling
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: