Summary: | Konqueror crashes on certain websites | ||
---|---|---|---|
Product: | [Applications] konqueror | Reporter: | keith <keith> |
Component: | khtml | Assignee: | Konqueror Developers <konq-bugs> |
Status: | RESOLVED WORKSFORME | ||
Severity: | crash | CC: | james, maksim, mutlu_inek |
Priority: | NOR | ||
Version: | 3.5 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: |
valgrind output
Another dump from valgrind with complete output |
Description
keith
2007-04-03 22:13:10 UTC
Can't confirm, but your backtrace is already pretty good -- you can probably get line numbers by installing kdelibs-debug package, but I doubt they would help all that much in this case. Forgot to ask: can you trigger the problem consistently? Thanks Maksim. I have installed the kde-debuginfo package. The problem still occurs. Konqueror starts to load the page, then crashes. I have rebooted my machine to reclaim some memory, but this has not cured the problem. The backtrace looks the same with kde-debuginfo installed. No extra line numbers available in the output. Could you try valgrind? valgrind --tool=memcheck konqueror Thanks for that Tommi. I have run Konqueror through valgrind and here is the output from the KDE Crash Handler: This backtrace appears to be of no use. This is probably because your packages are built in a way which prevents creation of proper backtraces, or the stack frame was seriously corrupted in the crash. (no debugging symbols found) Using host libthread_db library "/lib/libthread_db.so.1". (no debugging symbols found) 0x3805958c in ?? () #0 0x3805958c in ?? () #1 0x621bbeec in ?? () #2 0x38ae92dc in ?? () #3 0x000000a2 in ?? () #4 0x38bff060 in ?? () #5 0x3804be69 in ?? () #6 0x000000a2 in ?? () #7 0x38ae92dc in ?? () #8 0x621bbeb8 in ?? () #9 0x621bbeb0 in ?? () #10 0x00000008 in ?? () #11 0x621bbe48 in ?? () #12 0x621a8236 in ?? () #13 0x06d25485 in ?? () #14 0xbe828a9c in ?? () #15 0x00000000 in ?? () More importantly, here is the console output from valgrind: $ valgrind --tool=memcheck konqueror ==8537== Memcheck, a memory error detector. ==8537== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al. ==8537== Using LibVEX rev 1658, a library for dynamic binary translation. ==8537== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP. ==8537== Using valgrind-3.2.1, a dynamic binary instrumentation framework. ==8537== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. ==8537== For more details, rerun with: -v ==8537== ==8537== Syscall param writev(vector[...]) points to uninitialised byte(s) ==8537== at 0xBE6B78: writev (in /lib/libc-2.5.so) ==8537== by 0xCFF93D: (within /usr/lib/libX11.so.6.2.0) ==8537== by 0xCFF72E: _X11TransWritev (in /usr/lib/libX11.so.6.2.0) ==8537== by 0xD05418: _XSend (in /usr/lib/libX11.so.6.2.0) ==8537== by 0xCF633A: XQueryExtension (in /usr/lib/libX11.so.6.2.0) ==8537== by 0xCEAC5A: XInitExtension (in /usr/lib/libX11.so.6.2.0) ==8537== by 0x2C8CFF: XFixesFindDisplay (in /usr/lib/libXfixes.so.3.1.0) ==8537== by 0x2C775E: XFixesSetCursorName (in /usr/lib/libXfixes.so.3.1.0) ==8537== by 0x2BD9A6: XcursorImagesLoadCursor (in /usr/lib/libXcursor.so.1.0.2) ==8537== by 0x2C0870: XcursorLibraryLoadCursor (in /usr/lib/libXcursor.so.1.0.2) ==8537== by 0x4DB46AE: QCursor::update() const (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4DB4A73: QCursor::handle() const (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== Address 0x403F061 is 257 bytes inside a block of size 16,384 alloc'd ==8537== at 0x400473F: calloc (vg_replace_malloc.c:279) ==8537== by 0xCF03B6: XOpenDisplay (in /usr/lib/libX11.so.6.2.0) ==8537== by 0x4DA74EF: qt_init_internal(int*, char**, _XDisplay*, unsigned long, unsigned long) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4DA7DFB: qt_init(int*, char**, QApplication::Type) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E19122: QApplication::construct(int&, char**, QApplication::Type) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E1953A: QApplication::QApplication(int&, char**, bool) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x6CA1DDD: KApplication::KApplication(bool, bool) (in /usr/lib/libkdecore.so.4.2.0) ==8537== by 0x4FA209: kdemain (in /usr/lib/libkdeinit_konqueror.so) ==8537== by 0x8048471: (within /usr/bin/konqueror) ==8537== by 0xB36F2B: (below main) (in /lib/libc-2.5.so) ==8537== ==8537== Conditional jump or move depends on uninitialised value(s) ==8537== at 0x4653709: QMapPrivate<QWidget const*, bool>::find(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x46537A1: QMap<QWidget const*, bool>::find(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x4653A37: QMap<QWidget const*, bool>::contains(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x464CBCB: PlastikStyle::drawPrimitive(QStyle::PrimitiveElement, QPainter*, QRect const&, QColorGroup const&, unsigned, QStyleOption const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x464A7FF: PlastikStyle::drawControl(QStyle::ControlElement, QPainter*, QWidget const*, QRect const&, QColorGroup const&, unsigned, QStyleOption const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x4F928BB: QMenuBar::drawContents(QPainter*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x6FFEFF4: KMenuBar::drawContents(QPainter*) (in /usr/lib/libkdeui.so.4.2.0) ==8537== by 0x4F40FF4: QFrame::paintEvent(QPaintEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4EB9F67: QWidget::event(QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E13E6A: QApplication::internalNotify(QObject*, QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E152E8: QApplication::notify(QObject*, QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x6CA256D: KApplication::notify(QObject*, QEvent*) (in /usr/lib/libkdecore.so.4.2.0) ==8537== ==8537== Conditional jump or move depends on uninitialised value(s) ==8537== at 0x4653733: QMapPrivate<QWidget const*, bool>::find(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x46537A1: QMap<QWidget const*, bool>::find(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x4653A37: QMap<QWidget const*, bool>::contains(QWidget const* const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x464CBCB: PlastikStyle::drawPrimitive(QStyle::PrimitiveElement, QPainter*, QRect const&, QColorGroup const&, unsigned, QStyleOption const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x464A7FF: PlastikStyle::drawControl(QStyle::ControlElement, QPainter*, QWidget const*, QRect const&, QColorGroup const&, unsigned, QStyleOption const&) const (in /usr/lib/kde3/plugins/styles/plastik.so) ==8537== by 0x4F928BB: QMenuBar::drawContents(QPainter*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x6FFEFF4: KMenuBar::drawContents(QPainter*) (in /usr/lib/libkdeui.so.4.2.0) ==8537== by 0x4F40FF4: QFrame::paintEvent(QPaintEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4EB9F67: QWidget::event(QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E13E6A: QApplication::internalNotify(QObject*, QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x4E152E8: QApplication::notify(QObject*, QEvent*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== by 0x6CA256D: KApplication::notify(QObject*, QEvent*) (in /usr/lib/libkdecore.so.4.2.0) ==8537== ==8537== Jump to the invalid address stated on the next line ==8537== at 0x1DDABC8: ??? ==8537== by 0x22732D5: DOM::ElementImpl::setAttributeMap(DOM::NamedAttrMapImpl*) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x228A97F: khtml::KHTMLParser::parseToken(khtml::Token*) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x228B757: khtml::HTMLTokenizer::processToken() (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x228F9F5: khtml::HTMLTokenizer::parseTag(khtml::TokenizerString&) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x229050F: khtml::HTMLTokenizer::write(khtml::TokenizerString const&, bool) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x228D1F2: khtml::HTMLTokenizer::notifyFinished(khtml::CachedObject*) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x236A474: khtml::CachedScript::checkNotify() (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x236D24A: khtml::CachedScript::data(QBuffer&, bool) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x2369E0D: khtml::Loader::slotFinished(KIO::Job*) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x236A06C: khtml::Loader::qt_invoke(int, QUObject*) (in /usr/lib/libkhtml.so.4.2.0) ==8537== by 0x4E7CBE9: QObject::activate_signal(QConnectionList*, QUObject*) (in /usr/lib/qt-3.3/lib/libqt-mt.so.3.3.7) ==8537== Address 0x1DDABC8 is not stack'd, malloc'd or (recently) free'd KCrash: crashing... crashRecursionCounter = 2 KCrash: Application Name = konqueror path = <unknown> pid = 8537 After hitting CTRL-C I get the following extra output: ==8537== ==8537== ERROR SUMMARY: 6 errors from 4 contexts (suppressed: 177 from 3) ==8537== malloc/free: in use at exit: 9,349,993 bytes in 221,654 blocks. ==8537== malloc/free: 1,134,074 allocs, 912,420 frees, 55,811,190 bytes allocated. ==8537== For counts of detected errors, rerun with: -v ==8537== searching for pointers to 221,654 not-freed blocks. ==8537== checked 9,467,736 bytes. ==8537== ==8537== LEAK SUMMARY: ==8537== definitely lost: 27,434 bytes in 908 blocks. ==8537== possibly lost: 376 bytes in 6 blocks. ==8537== still reachable: 9,322,183 bytes in 220,740 blocks. ==8537== suppressed: 0 bytes in 0 blocks. ==8537== Use --leak-check=full to see details of leaked memory. I shall try some further options with valgrind, to see if it will make the error messages even more verbose. Created attachment 20173 [details]
valgrind output
Here is some more verbose output from valgrind
Created attachment 20175 [details]
Another dump from valgrind with complete output
I left off some debug output from the last valgrind dump. I have added
debug-info for kde-base as well.
Not reproducible for me with Konqui from KDE 3.5.9, nor with Konqui from KDE4 trunk, r798847. Cannot reproduce in 3.5.9. Closing. |