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