Bug 110087 - crash when expanding document contents tree
Summary: crash when expanding document contents tree
Status: RESOLVED FIXED
Alias: None
Product: kpdf
Classification: Applications
Component: general (show other bugs)
Version: 0.4.2
Platform: Mandriva RPMs Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: Albert Astals Cid
URL:
Keywords:
: 110155 111735 112104 112811 113785 114144 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-08-03 12:14 UTC by Artemio
Modified: 2005-10-09 22:14 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Artemio 2005-08-03 12:14:24 UTC
Version:           0.4.2 (using KDE KDE 3.4.2)
Installed from:    Mandriva RPMs
Compiler:          gcc 3.4.3 
OS:                Linux

Please download any of the Roland synthesiser manuals, like this one:
http://www.roland.com/products/en/_support/om.cfm?iCncd=698&ln=EN&SearchBy=RcId&dst=P&iRcId=0000006464&dsp=1

KPDF from KDE 3.4.0 which was backported to KDE 3.3.2 in Mandriva 2005 used to work fine with such PDF files. But now I installed 3.4.2 here and when I open any of such PDFs and try to expand the TOC tree, it crashes. The backtrace is below.

(no debugging symbols found)
Using host libthread_db library "/lib/tls/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1230711104 (LWP 18961)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[KCrash handler]
#7  0xb74a0093 in QDomElement::attribute ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#8  0xbfffe5c8 in ?? ()
#9  0xb7ff6f50 in _dl_runtime_resolve () at dl-runtime.c:62
#10 0xb6889044 in TOC::slotExecuted () from /usr/lib/kde3/libkpdfpart.so
#11 0xb6889665 in TOC::qt_invoke () from /usr/lib/kde3/libkpdfpart.so
#12 0xb72426c8 in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#13 0xb6feabcc in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#14 0xb7024e9c in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0x00000000 in ?? ()
#16 0x081a2798 in ?? ()
#17 0x00000000 in ?? ()
#18 0x087e6629 in ?? ()
#19 0xb707b27a in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0xb79348f1 in non-virtual thunk to KURLDrag::encodedData(char const*) const () from /usr/lib/libkdecore.so.4
#21 0xb76e2444 in ?? ()
#22 0x017e6629 in ?? ()
#23 0x081a2798 in ?? ()
#24 0xb768d574 in ?? () from /usr/lib/qt3/lib/libqt-mt.so.3
#25 0xbfffe688 in ?? ()
#26 0xbfffe660 in ?? ()
#27 0x081d93e0 in ?? ()
#28 0xb759ac30 in QListView::clicked () from /usr/lib/qt3/lib/libqt-mt.so.3
#29 0x081a2798 in ?? ()
#30 0x081d93e0 in ?? ()
#31 0xbfffe660 in ?? ()
#32 0xb7ff7014 in fixup (l=0x69, reloc_offset=16) at dl-runtime.c:98
Comment 1 Daniel Green 2005-08-03 16:34:00 UTC
I also experience this problem. I'm running RHEL 3, with KDE 3.4.2, however the problem also existed in 3.4.1. Below is a backtrace.

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1240702848 (LWP 17450)]
[KCrash handler]
#3  0xb6a940ed in QDomElement::attribute ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#4  0xb60557db in TOC::slotExecuted () from /usr/lib/kde3/libkpdfpart.so
#5  0xb6055e62 in TOC::qt_invoke () from /usr/lib/kde3/libkpdfpart.so
#6  0xb6860d00 in QObject::activate_signal ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#7  0xb6ba5825 in QListView::clicked () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#8  0xb69411d0 in QListView::contentsMouseReleaseEventEx ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#9  0xb6940fb6 in QListView::contentsMouseReleaseEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#10 0xb70e74c3 in KListView::contentsMouseReleaseEvent ()
   from /usr/lib/libkdeui.so.4
#11 0xb69716ec in QScrollView::viewportMouseReleaseEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#12 0xb6970fd7 in QScrollView::eventFilter ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#13 0xb693f988 in QListView::eventFilter ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#14 0xb685e63e in QObject::activate_filters ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#15 0xb685e561 in QObject::event () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#16 0xb6895d5c in QWidget::event () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#17 0xb68057a5 in QApplication::internalNotify ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#18 0xb6804f42 in QApplication::notify ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#19 0xb6deb478 in KApplication::notify () from /usr/lib/libkdecore.so.4
#20 0xb679b288 in QETWidget::translateMouseEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#21 0xb6799005 in QApplication::x11ProcessEvent ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#22 0xb67b02b7 in QEventLoop::processEvents ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#23 0xb6817806 in QEventLoop::enterLoop ()
   from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#24 0xb68176a8 in QEventLoop::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#25 0xb68059f1 in QApplication::exec () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#26 0x0804ed6e in ?? ()
#27 0xbfffbbd0 in ?? ()
#28 0x00000001 in ?? ()
#29 0x00000001 in ?? ()
#30 0x00000000 in ?? ()
#31 0x080508f5 in _IO_stdin_used ()
#32 0x00000001 in ?? ()
#33 0x08050b4c in _IO_stdin_used ()
#34 0x00000000 in ?? ()
#35 0x00000000 in ?? ()
#36 0x080507e0 in _IO_stdin_used ()
#37 0xb75f3746 in _dl_lookup_versioned_symbol_internal ()
   from /lib/ld-linux.so.2
#38 0xb62b279d in __libc_start_main () from /lib/tls/libc.so.6
#39 0x0804ea91 in ?? ()
Comment 2 Albert Astals Cid 2005-08-03 18:12:24 UTC
SVN commit 442692 by aacid:

Forgot to backport this crash fix from 3.5 branch, sorry about it, will be there on KDE 3.4.3 and KDE 3.5.0
BUGS: 110087
BUGS: 110111


 M  +6 -1      toc.cpp  


--- branches/KDE/3.4/kdegraphics/kpdf/ui/toc.cpp #442691:442692
@@ -121,7 +121,12 @@
 
 void TOC::slotExecuted( QListViewItem *i )
 {
-    const QDomElement & e = static_cast< TOCItem* >( i )->element();
+    TOCItem* tocItem = dynamic_cast<TOCItem*>( i );
+    // that filters clicks on [+] that for a strange reason don't seem to be TOCItem*
+    if (tocItem == NULL)
+        return;
+    const QDomElement & e = tocItem->element();
+
     QString externalFileName = e.attribute( "ExternalFileName" );
     if ( !externalFileName.isEmpty() )
     {
Comment 3 Albert Astals Cid 2005-08-04 18:25:44 UTC
*** Bug 110155 has been marked as a duplicate of this bug. ***
Comment 4 Albert Astals Cid 2005-08-06 13:50:12 UTC
*** Bug 110278 has been marked as a duplicate of this bug. ***
Comment 5 Bryan 2005-08-07 01:12:52 UTC
Thankyou, Albert.
I had a look at  110087. I downloaded the pdf mentioned in  the report. It crashes my kpdf 0.4.2 on  KDE 3.4.2 ubuntu hoary deb version just as  described. 
This  is slightly different behaviour to my 110278 report. The 110278 crash does not occur on opening the tree of the immunisation handbook, but on navigating in its lower levels. Anyway, where is/how do I get the "fixed kdpf"? Looks like I may  have to wait for KDE 3.4.3 or 3.5.  I hope other xpdf browsers  like  Xpdf and  Evince and GPDF have fixed  this  navigation  problem. Can you  actually  navigate  the Australian Immunisation  Handbook 8th ed 2003 with  the fixed  kpdf?
Bryan
Comment 6 Albert Astals Cid 2005-08-30 10:35:11 UTC
*** Bug 111735 has been marked as a duplicate of this bug. ***
Comment 7 Albert Astals Cid 2005-09-06 11:05:12 UTC
*** Bug 112104 has been marked as a duplicate of this bug. ***
Comment 8 Albert Astals Cid 2005-09-18 12:43:59 UTC
*** Bug 112811 has been marked as a duplicate of this bug. ***
Comment 9 Albert Astals Cid 2005-10-03 20:07:23 UTC
*** Bug 113785 has been marked as a duplicate of this bug. ***
Comment 10 Albert Astals Cid 2005-10-09 22:05:02 UTC
*** Bug 114144 has been marked as a duplicate of this bug. ***
Comment 11 Jonas Diemer 2005-10-09 22:14:45 UTC
I found out that the crash doesn't occur when you click (and hold) on the + to expand, then move the mouse away from the + before releasing it. 

But the crash DOES also happen when you close (collapse/unexpand) a subtree by clicking the - (after you have expanded the subtree with the method above). It doesn't crash if you use the drag method described above to close the subtree.

Thus: the crash happens on a "mouse-click-release" event...