Bug 182941 - Hovering over video file with tooltips enabled crashes dolphin
Summary: Hovering over video file with tooltips enabled crashes dolphin
Status: RESOLVED FIXED
Alias: None
Product: dolphin
Classification: Applications
Component: general (show other bugs)
Version: 16.12.2
Platform: Gentoo Packages Linux
: NOR crash
Target Milestone: ---
Assignee: Peter Penz
URL:
Keywords:
: 190537 195398 196154 203299 204362 219632 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-02-03 01:32 UTC by Javier Marcet
Modified: 2009-12-22 05:48 UTC (History)
9 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 Javier Marcet 2009-02-03 01:32:26 UTC
Version:            (using KDE 4.2.0)
Compiler:          gcc 4.3.3 
OS:                Linux
Installed from:    Gentoo Packages

It seems bug #163096 is not 100% fixed.

I can't enable tooltips in dolphin or it'll crash with video files.

Besides, I have set the limit to 5MB files, so these video files being all bigger than 500MB should not even trigger the tooltip, right?

Here is the backtrace:

Application: Dolphin (dolphin), signal SIGSEGV

Thread 1 (Thread 0xb7f78700 (LWP 8358)):
[KCrash Handler]
#6  0x00000000 in ?? ()
#7  0x467d6709 in ToolTipManager::prepareToolTip (this=<value optimized out>) at /var/tmp/portage/kde-base/dolphin-4.2.0/work/dolphin-4.2.0/apps/dolphin/src/tooltipmanager.cpp:180
#8  0x467d6b23 in ToolTipManager::qt_metacall (this=<value optimized out>, _c=<value optimized out>, _id=<value optimized out>, _a=<value optimized out>)
    at /var/tmp/portage/kde-base/dolphin-4.2.0/work/dolphin_build/apps/dolphin/src/tooltipmanager.moc:78
#9  0x453528eb in QMetaObject::activate (sender=<value optimized out>, from_signal_index=<value optimized out>, to_signal_index=<value optimized out>, argv=<value optimized out>)
    at kernel/qobject.cpp:3034
#10 0x45352e42 in QMetaObject::activate (sender=<value optimized out>, m=<value optimized out>, local_signal_index=<value optimized out>, argv=) at kernel/qobject.cpp:3107
#11 0x453879c7 in QTimer::timeout (this=) at .moc/release-shared/moc_qtimer.cpp:126
#12 0x45359e5e in QTimer::timerEvent (this=<value optimized out>, e=<value optimized out>) at kernel/qtimer.cpp:263
#13 0x4534f1ff in QObject::event (this=<value optimized out>, e=<value optimized out>) at kernel/qobject.cpp:1126
#14 0x45aa834c in QApplicationPrivate::notify_helper (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:3809
#15 0x45aaf3ee in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:3399
#16 0x465e5a4d in KApplication::notify (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>)
    at /var/tmp/portage/kde-base/kdelibs-4.2.0-r1/work/kdelibs-4.2.0/kdeui/kernel/kapplication.cpp:307
#17 0x45341161 in QCoreApplication::notifyInternal (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at kernel/qcoreapplication.cpp:589
#18 0x45369381 in QTimerInfoList::activateTimers (this=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#19 0x453695fb in QEventDispatcherUNIX::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventdispatcher_unix.cpp:899
#20 0x45b2fbe6 in QEventDispatcherX11::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventdispatcher_x11.cpp:154
#21 0x4533f8ca in QEventLoop::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qeventloop.cpp:149
#22 0x4533fa8a in QEventLoop::exec (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:196
#23 0x45341c7d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:851
#24 0x45aa81c7 in QApplication::exec () at kernel/qapplication.cpp:3337
#25 0x080833df in main (argc=1, argv=0xbf9b1d54) at /var/tmp/portage/kde-base/dolphin-4.2.0/work/dolphin-4.2.0/apps/dolphin/src/main.cpp:94
Comment 1 Peter Penz 2009-02-03 07:38:22 UTC
Thanks for the report! Dolphin currently ignores the maximum size in tooltips, which is an issue...  Still it should not crash even for huge items -> I'll need to investigate... :-)
Comment 2 Frank Sagurna 2009-02-10 21:07:41 UTC
I dont know if its the same bug, but dolphin crashes for me on changing video files when tooltips enabled.
With changing video file i mean a file i am encoding at the moment, and therefore is changing and growing in the time i am in dolphin.
So disabling tooltips prevents the crash, so it may be related.

Here is a partial (Half the lines were "no debugging symbols found" hope the rest is helpful)backtrace:
Eine korrekte Rückverfolgung ist nicht möglich.
Wahrscheinlich sind die Dateien Ihres Systems in einer Weise erstellt worden, die eine solche Rückverfolgung (Backtrace) nicht erlaubt. Oder der so genannte „Stack Frame“ für das Programm wurde durch den Absturz unbrauchbar gemacht.

(no debugging symbols found)
... (Some more of them)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 0x7ff8098cf6f0 (LWP 24296)]
(no debugging symbols found)
... (Some more of them)
(no debugging symbols found)
0x00007ff8054df5f0 in nanosleep () from /lib/libc.so.6
[Current thread is 0 (process 24296)]

Thread 1 (Thread 0x7ff8098cf6f0 (LWP 24296)):
#0  0x00007ff8054df5f0 in nanosleep () from /lib/libc.so.6
#1  0x00007ff8054df447 in sleep () from /lib/libc.so.6
#2  0x00007ff807a75cbf in ?? () from /usr/lib/libkdeui.so.5
#3  0x00007ff807a765ca in KCrash::defaultCrashHandler () from /usr/lib/libkdeui.so.5
#4  <signal handler called>
#5  0x00007ff804da12b0 in Strigi::readBigEndianUInt32 () from /usr/lib/libstreams.so.0
#6  0x00007ff7fa095f6f in Mp4ThroughAnalyzer::connectInputStream () from /usr/lib/strigi/strigita_mp4.so
#7  0x00007ff804ff072b in ?? () from /usr/lib/libstreamanalyzer.so.0
#8  0x00007ff80936e507 in ?? () from /usr/lib/libkio.so.5
#9  0x00007ff80936faa2 in KFileMetaInfo::KFileMetaInfo () from /usr/lib/libkio.so.5
#10 0x00007ff80935f87c in KFileItem::metaInfo () from /usr/lib/libkio.so.5
#11 0x00007ff80936282d in KFileItem::getToolTipText () from /usr/lib/libkio.so.5
#12 0x00007ff808b438ba in ?? () from /usr/lib/libdolphinprivate.so.4
#13 0x00007ff808b43b38 in ?? () from /usr/lib/libdolphinprivate.so.4
#14 0x00007ff8060bc134 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#15 0x00007ff8060b6a43 in QObject::event () from /usr/lib/libQtCore.so.4
#16 0x00007ff80655bc3d in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#17 0x00007ff8065639ba in QApplication::notify () from /usr/lib/libQtGui.so.4
#18 0x00007ff807a105db in KApplication::notify () from /usr/lib/libkdeui.so.5
#19 0x00007ff8060a7d61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#20 0x00007ff8060d3ab6 in ?? () from /usr/lib/libQtCore.so.4
#21 0x00007ff8060d01fd in ?? () from /usr/lib/libQtCore.so.4
#22 0x00007ff801decd3b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#23 0x00007ff801df050d in ?? () from /usr/lib/libglib-2.0.so.0
#24 0x00007ff801df06cb in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#25 0x00007ff8060d015f in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#26 0x00007ff8065eda6f in ?? () from /usr/lib/libQtGui.so.4
#27 0x00007ff8060a6682 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#28 0x00007ff8060a680d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#29 0x00007ff8060a8cbd in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#30 0x0000000000443b6d in _start ()
#0  0x00007ff8054df5f0 in nanosleep () from /lib/libc.so.6
Comment 3 Pino Toscano 2009-03-15 00:30:26 UTC
@Frank Sagurna:
your problem is bug #181591.
Comment 4 Christophe Marin 2009-06-06 12:43:48 UTC
*** Bug 195398 has been marked as a duplicate of this bug. ***
Comment 5 Christophe Marin 2009-06-12 12:42:07 UTC
*** Bug 196154 has been marked as a duplicate of this bug. ***
Comment 6 christian tacke 2009-06-12 20:20:16 UTC
Got a similar problem. Dolphin freezes for about 38seconds when hovering a large video file with HD content (Home, 1,4 gig). as it doesn't crash I cant provide a backtrace.

greets LBL
Comment 7 FiNeX 2009-08-10 16:09:42 UTC
*** Bug 203299 has been marked as a duplicate of this bug. ***
Comment 8 Manuel 2009-08-17 08:02:35 UTC
Me too... similar Christian's Take problem.... Dolphin freezes when hovering an HD video (H264)... and it starts to eat lots of mempory... it goes from 30 mb to 250... and then it reacts (20-30 secs waiting...)

This long wait happens in >100 mb videos (smaller videos don't hang too long)

It doesn't crashes for me.

Ubuntu Jaunty, kubuntu-ppa backports packages.
Comment 9 Peter Penz 2009-08-17 16:33:02 UTC
I did some analyses and it's an issue in Strigi (see http://sourceforge.net/tracker/?func=detail&aid=2830904&group_id=171000&atid=856302 and http://sourceforge.net/tracker/?func=detail&aid=2830902&group_id=171000&atid=856302). In Dolphin for KDE 4.4 the tooltips will be changed to not use Strigi anymore, but this cannot be backported to KDE 4.3.x because this requires some string changes :-( Hopefully the Strigi maintainers will fix this issue ASAP.

Important information: If someone claims that he has turned off Strigi in the system settings and the issue still occurs. Turning off Strigi in the system settings only turns of the Strigi indexer, not Strigi itself.
Comment 10 Tommi Tervo 2009-08-19 08:52:05 UTC
*** Bug 204362 has been marked as a duplicate of this bug. ***
Comment 11 Tommi Tervo 2009-08-19 08:52:23 UTC
*** Bug 190537 has been marked as a duplicate of this bug. ***
Comment 12 Peter Penz 2009-11-03 22:48:34 UTC
SVN commit 1044485 by ppenz:

Since Qt 4.5 it is possible to have translucient windows. The tooltip approach having a delegate and custom drawing + animation code for transparent tooltips has now been replaced by a translucient window where any kind of (animated) widget can be embedded. Still a lot of finetuning has to be done, but maybe this code can be part of kdelibs in KDE 4.5 (systemsettings currently used the Dolphin tooltips code).

Additionally the tooltip uses now KMetaDataWidget instead of using KMetaInfo. This assures that no blocking of the application will occur even if there is a buggy Strigi analyzer that ignores the maximum size-setting and might block the retrieving of the meta data.

BUG: 182941
BUG: 195878

 M  +1 -4      CMakeLists.txt  
 M  +2 -2      pixmapviewer.h  
 D             tooltips/dolphintooltip.cpp  
 D             tooltips/dolphintooltip.h  
 D             tooltips/kformattedballoontipdelegate.cpp  
 D             tooltips/kformattedballoontipdelegate.h  
 M  +38 -164   tooltips/ktooltip.cpp  
 M  +9 -17     tooltips/ktooltip.h  
 M  +3 -18     tooltips/ktooltip_p.h  
 D             tooltips/ktooltipdelegate.cpp  
 D             tooltips/ktooltipdelegate.h  
 D             tooltips/ktooltipitem.cpp  
 D             tooltips/ktooltipitem.h  
 A             tooltips/ktooltipwindow.cpp   [License: GPL (v2+)]
 A             tooltips/ktooltipwindow_p.h   [License: GPL (v2+)]
 M  +56 -55    tooltips/tooltipmanager.cpp  
 M  +7 -1      tooltips/tooltipmanager.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1044485
Comment 13 Jonathan Thomas 2009-12-22 05:48:22 UTC
*** Bug 219632 has been marked as a duplicate of this bug. ***