<rdar://problem/
3672101> HANG: typing into login field at dws-direkt.deutsche-bank.de (infinite recursion)
* khtml/xml/dom_docimpl.cpp:
(DocumentImpl::defaultEventHandler): Copy the list of handlers
before firing any of them, in case a handler affects the list of
event handlers.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7611
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2004-09-20 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Richard.
+
+ <rdar://problem/3672101> HANG: typing into login field at dws-direkt.deutsche-bank.de (infinite recursion)
+
+ * khtml/xml/dom_docimpl.cpp:
+ (DocumentImpl::defaultEventHandler): Copy the list of handlers
+ before firing any of them, in case a handler affects the list of
+ event handlers.
+
2004-09-20 Chris Blumenberg <cblu@apple.com>
Fixed:
void DocumentImpl::defaultEventHandler(EventImpl *evt)
{
// if any html event listeners are registered on the window, then dispatch them here
- QPtrListIterator<RegisteredEventListener> it(m_windowEventListeners);
+ QPtrList<RegisteredEventListener> listenersCopy = m_windowEventListeners;
+ QPtrListIterator<RegisteredEventListener> it(listenersCopy);
Event ev(evt);
for (; it.current(); ++it) {
if (it.current()->id == evt->id()) {