LiveConnect crash (Re: Konqueror crash (with backtrace))
David Faure
david at mandrakesoft.com
Sat May 18 21:25:24 BST 2002
On Saturday 18 May 2002 21:45, Hetz Ben Hamo wrote:
> Hi,
>
> I'm trying to go to this URL: http://forums.nana.co.il/forum.asp?id=2092
>
> And I get this crash (something with DOM I think)
LiveConnect stuff, actually.
#0 0x41802bc7 in DOM::LiveConnectElementImpl::get (this=0x83b2990, objid=0, field=@0xbfffdf80, type=@0xbfffdf68,
retobjid=@0xbfffdf60, value=@0xbfffdf70) at /mnt/devel/kde/kdecvs/kdelibs/khtml/html/html_objectimpl.cpp:61
61 return liveconnect->get(objid, field, type, retobjid, value);
(gdb) p liveconnect
Error accessing memory address 0x9947808: No such process.
(gdb) up
#1 0x41ac94dd in KJS::HTMLElement::tryGet (this=0x85cbdd0, exec=0x849aa40, propertyName=@0xbfffe0a0)
at /mnt/devel/kde/kdecvs/kdelibs/khtml/ecma/kjs_html.cpp:1095
1095 if (elm && elm->get(0, propertyName.qstring(), rettype, retobjid, retvalue))
(gdb) list
1090 case ID_EMBED: {
1091 DOM::LiveConnectElementImpl * elm = static_cast<DOM::LiveConnectElementImpl*>(element.handle());
1092 QString retvalue;
1093 KParts::LiveConnectExtension::Type rettype;
1094 unsigned long retobjid;
1095 if (elm && elm->get(0, propertyName.qstring(), rettype, retobjid, retvalue))
1096 return EmbedLiveConnect::getValue(element, propertyName.qstring(), rettype, retvalue);
1097 break;
1098 }
1099 default:
Valgrind says:
==14958== Invalid read of size 4
==14958== at 0x4863ABA9: DOM::LiveConnectElementImpl::get(unsigned long, QString const &, KParts::LiveConnectExtension::Type &, unsigned long &, QString &) (/mnt/devel/kde/kdecvs/kdelibs/khtml/html/html_objectimpl.cpp:61)
==14958== by 0x497E54DD: KJS::HTMLElement::tryGet(KJS::ExecState *, KJS::UString const &) const (/mnt/devel/kde/kdecvs/kdelibs/khtml/ecma/kjs_html.cpp:1095)
==14958== by 0x497C6453: KJS::DOMObject::get(KJS::ExecState *, KJS::UString const &) const (/mnt/devel/kde/kdecvs/kdelibs/khtml/ecma/kjs_binding.cpp:45)
==14958== by 0x49AA8F4B: KJS::ValueImp::getValue(KJS::ExecState *) const (/mnt/devel/kde/kdecvs/kdelibs/kjs/value.cpp:164)
==14958== by 0x49AA9732: KJS::Value::getValue(KJS::ExecState *) const (/mnt/devel/kde/kdecvs/kdelibs/kjs/value.cpp:330)
==14958== by 0x49A7CF77: KJS::AccessorNode2::evaluate(KJS::ExecState *) (/mnt/devel/kde/kdecvs/kdelibs/kjs/nodes.cpp:540)
==14958== by 0x49A814A3: KJS::EqualNode::evaluate(KJS::ExecState *) (/mnt/devel/kde/kdecvs/kdelibs/kjs/nodes.cpp:1335)
==14958== by 0x49A851C7: KJS::IfNode::execute(KJS::ExecState *) (/mnt/devel/kde/kdecvs/kdelibs/kjs/nodes.cpp:1957)
==14958== Address 0x47B1E8CC is not stack'd, malloc'd or free'd
Looks like an uninitialized variable. Koos? ;)
--
David FAURE, david at mandrakesoft.com, faure at kde.org
http://people.mandrakesoft.com/~david/
Contributing to: http://www.konqueror.org/, http://www.koffice.org/
KDE, Making The Future of Computing Available Today
More information about the kfm-devel
mailing list