| Summary: | konqueror 4.3.1 release 6 crashes on displaying certain web pages | ||
|---|---|---|---|
| Product: | [Applications] konqueror | Reporter: | James Dow <dow> |
| Component: | general | Assignee: | Konqueror Bugs <konqueror-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | crash | CC: | ddboline, maksim |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Unlisted Binaries | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
James Dow
2009-11-11 16:58:01 UTC
konqueror: /home/maksim/kde42/src/kdelibs/khtml/xml/dom_docimpl.cpp:353: void DOM::ElementMappingCache::remove(const DOM::DOMString&, DOM::ElementImpl*): Assertion `m_dict.contains(id)' failed.
#9 0x060c0648 in *__GI___assert_fail (assertion=0x4ef2991 "m_dict.contains(id)", file=0x4ef25e4 "/home/maksim/kde42/src/kdelibs/khtml/xml/dom_docimpl.cpp", line=353,
function=0x4ef35c0 "void DOM::ElementMappingCache::remove(const DOM::DOMString&, DOM::ElementImpl*)") at assert.c:81
#10 0x04b596ba in DOM::ElementMappingCache::remove (this=0x8bbc900, id=..., nd=0x94f9030) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_docimpl.cpp:353
#11 0x04b71a6d in DOM::ElementImpl::removeId (this=0x94f9030, id=...) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:1153
#12 0x04b7008e in DOM::ElementImpl::updateId (this=0x94f9030, oldId=0x9d74330, newId=0x951ca08) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:1145
#13 0x04b76b61 in DOM::AttrImpl::childrenChanged (this=0x92e0780) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:183
#14 0x04b67c42 in DOM::NodeImpl::dispatchSubtreeModifiedEvent (this=0x92e0780) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_nodeimpl.cpp:670
#15 0x04b67fd0 in DOM::NodeBaseImpl::appendChild (this=0x92e0780, newChild=0x9df3a88, exceptioncode=@0xbf7f8dec) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_nodeimpl.cpp:1740
#16 0x04b75076 in DOM::AttrImpl::setValue (this=0x92e0780, v=..., exceptioncode=@0xbf7f8e2c) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:214
#17 0x04b751a4 in DOM::AttributeImpl::setValue (this=0x951c914, value=0x9ce6158, element=0x94f9030) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:311
#18 0x04b7536d in DOM::NamedAttrMapImpl::setValue (this=0x94f7d58, id=65764, value=0x9ce6158, prefix=..., nsAware=<value optimized out>)
at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:1547
#19 0x04b75735 in DOM::ElementImpl::setAttribute (this=0x94f9030, id=65764, prefix=..., nsAware=false, value=..., exceptioncode=@0xbf7f909c)
at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:515
#20 0x04b75874 in DOM::ElementImpl::setAttribute (this=0x94f9030, name=..., value=..., exceptioncode=@0xbf7f909c) at /home/maksim/kde42/src/kdelibs/khtml/xml/dom_elementimpl.cpp:655
#21 0x04d34fbb in DOMElementProtoFunc::callAsFunction (this=0xb44301e0, exec=0xbf7f959c, thisObj=0xb4430160, args=...) at /home/maksim/kde42/src/kdelibs/khtml/ecma/kjs_dom.cpp:1332
#22 0x02964a05 in KJS::JSObject::call (this=0xb44301e0, exec=0xbf7f959c, thisObj=0xb4430160, args=...) at /home/maksim/kde42/src/kdelibs/kjs/object.cpp:69
#23 0x02984352 in KJS::Machine::runBlock (exec=0xbf7f959c, codeBlock=..., parentExec=0xbf7f9b7c) at /home/maksim/kde42/build/kdelibs/kjs/machine.cpp:4395
#24 0x0295f454 in KJS::FunctionImp::callAsFunction (this=0xb443c400, exec=0xbf7f9b7c, thisObj=0xb4430160, args=...) at /home/maksim/kde42/src/kdelibs/kjs/function.cpp:144
#25 0x02964a05 in KJS::JSObject::call (this=0xb443c400, exec=0xbf7f9b7c, thisObj=0xb4430160, args=...) at /home/maksim/kde42/src/kdelibs/kjs/object.cpp:69
#26 0x02940948 in KJS::FunctionProtoFunc::callAsFunction (this=0xb4390060, exec=0xbf7f9b7c, thisObj=0xb443c400, args=...) at /home/maksim/kde42/src/kdelibs/kjs/function_object.cpp:139
Seems like the hasID bits are wrong, due to a non-html element.
It probably dhoulf maintan the bit in ElementImpl... or at least also in XMLElementImpl and SVGElementImpl...
*** Bug 214160 has been marked as a duplicate of this bug. *** SVN commit 1070748 by orlovich: Properly set hasID bit on XML elements, too, so that the ID cache doesn't get out of sync. (Makes me wonder about the classname bit, too, though) BUG: 145612 BUG: 214127 M +17 -9 dom_elementimpl.cpp M +10 -8 dom_elementimpl.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1070748 SVN commit 1070751 by orlovich: Regression test for #145612/#214127 CCBUG:214127 CCBUG:145612 A baseline/xml/id-crash.xml-dom M +2 -0 baseline/xml/svnignore A tests/xml/id-crash.xml WebSVN link: http://websvn.kde.org/?view=rev&revision=1070751 |