Bug 253387 - switching comic in commic applet crashes plasma
Summary: switching comic in commic applet crashes plasma
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 254055 254277 254661 254901 255980 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-10-06 14:06 UTC by Michal Hlavinka
Modified: 2010-11-04 01:56 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
New crash information added by DrKonqi (7.39 KB, text/plain)
2010-10-07 07:05 UTC, Oldřich Jedlička
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michal Hlavinka 2010-10-06 14:06:05 UTC
Application: plasma-desktop (0.3)
KDE Platform Version: 4.5.2 (KDE 4.5.2)
Qt Version: 4.7.0
Operating System: Linux 2.6.35.6-37.fc14.x86_64 x86_64
Distribution: "Fedora release 14 (Laughlin)"

-- Information about the crash:
- What I was doing when the application crashed:

I have two comic applets on my desktop. One of them contains 3 comics. After switching from one to second comic it started downloading new picture and crashed after a second +-.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Plasma Workspace (plasma-desktop), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fc458719880 (LWP 1975))]

Thread 2 (Thread 0x7fc433fff710 (LWP 2059)):
#0  0x000000329f00b8c4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00000032b8f84384 in ?? () from /usr/lib64/libQtScript.so.4
#2  0x00000032b8f843b9 in ?? () from /usr/lib64/libQtScript.so.4
#3  0x000000329f006d5b in start_thread () from /lib64/libpthread.so.0
#4  0x000000329e8e3f6d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fc458719880 (LWP 1975)):
[KCrash Handler]
#6  Plasma::ToolTip::setContent (this=0x0, tipper=0x10c95a0, data=...) at /usr/src/debug/kdelibs-4.5.2/plasma/private/tooltip.cpp:300
#7  0x00007fc45b6b18bc in Plasma::ToolTipManager::setContent (this=0xdbf3d0, widget=<value optimized out>, data=...) at /usr/src/debug/kdelibs-4.5.2/plasma/tooltipmanager.cpp:239
#8  0x00007fc444e1eea3 in ComicApplet::dataUpdated (this=0x108d250, data=<value optimized out>) at /usr/src/debug/kdeplasma-addons-4.5.1/applets/comic/comic.cpp:430
#9  0x00007fc444e2270f in ComicApplet::qt_metacall (this=0x108d250, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff9abd91f0) at /usr/src/debug/kdeplasma-addons-4.5.1/x86_64-redhat-linux-gnu/applets/comic/comic.moc:107
#10 0x00000032a916e117 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#11 0x00007fc45b618227 in Plasma::DataContainer::dataUpdated (this=<value optimized out>, _t1=<value optimized out>, _t2=<value optimized out>) at /usr/src/debug/kdelibs-4.5.2/x86_64-redhat-linux-gnu/plasma/datacontainer.moc:101
#12 0x00007fc45b6185ce in Plasma::DataContainer::checkForUpdate (this=0x1d7e590) at /usr/src/debug/kdelibs-4.5.2/plasma/datacontainer.cpp:169
#13 0x00007fc45b61b2e3 in Plasma::DataEngine::timerEvent (this=<value optimized out>, event=<value optimized out>) at /usr/src/debug/kdelibs-4.5.2/plasma/dataengine.cpp:384
#14 0x00000032a9168949 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#15 0x00000032aafb360c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#16 0x00000032aafb8c5d in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#17 0x00007fc45a7cf416 in KApplication::notify (this=0xb56c60, receiver=0x18d7f80, event=0x7fff9abd99a0) at /usr/src/debug/kdelibs-4.5.2/kdeui/kernel/kapplication.cpp:310
#18 0x00000032a91579bc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#19 0x00000032a918260a in ?? () from /usr/lib64/libQtCore.so.4
#20 0x00000032a917fd14 in ?? () from /usr/lib64/libQtCore.so.4
#21 0x000000329e441e33 in g_main_dispatch (context=0xb76520) at gmain.c:2149
#22 g_main_context_dispatch (context=0xb76520) at gmain.c:2702
#23 0x000000329e442610 in g_main_context_iterate (context=0xb76520, block=1, dispatch=1, self=<value optimized out>) at gmain.c:2780
#24 0x000000329e4428ad in g_main_context_iteration (context=0xb76520, may_block=1) at gmain.c:2843
#25 0x00000032a917fa03 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#26 0x00000032ab05452e in ?? () from /usr/lib64/libQtGui.so.4
#27 0x00000032a9156802 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#28 0x00000032a9156adc in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#29 0x00000032a915b259 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#30 0x00007fc45c62600b in kdemain (argc=1, argv=0x7fff9abda008) at /usr/src/debug/kdebase-workspace-4.5.2/plasma/desktop/shell/main.cpp:118
#31 0x000000329e81ee7d in __libc_start_main (main=0x400900 <main(int, char**)>, argc=1, ubp_av=0x7fff9abda008, init=<value optimized out>, fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7fff9abd9ff8) at libc-start.c:226
#32 0x0000000000400829 in _start ()

Reported using DrKonqi
Comment 1 Michal Hlavinka 2010-10-06 14:15:32 UTC
I've seen "tooltip" in the backtrace so I've tried to play with it just a litlle and found this: one of the commics (PhD Comics) has tooltip ( "Tales from the road to...." ) other comics does not show tooltip. 

If I switch comic fast so tooltip does not show up, everything is ok
If I switch slowly when switching from comic that has no tooltip, everything is ok
If I switch comic when tooltip is shown, it crashes always

So there really is some problem with tooltip
Comment 2 Oldřich Jedlička 2010-10-07 07:05:04 UTC
Created attachment 52294 [details]
New crash information added by DrKonqi

plasma-desktop (0.3) on KDE Platform 4.5.2 (KDE 4.5.2) using Qt 4.6.3

I can confirm the same behaviour - problem with tooltip. When I switch comixes and the tooltip is shown, the application crashes. I'm using XKCD (with tooltip), Garfield and Dilbert, so when I switch from XKCD, I see the crash.

-- Backtrace (Reduced):
#7  0xb4e7b805 in Plasma::ToolTip::setContent (this=0x0, tipper=0xa3b4f90, data=...) at /mnt/data/tmp/portage/kde-base/kdelibs-4.5.2/work/kdelibs-4.5.2/plasma/private/tooltip.cpp:300
#8  0xb4eb4ec1 in Plasma::ToolTipManager::setContent (this=0xa110a20, widget=0xa3b4f90, data=...) at /mnt/data/tmp/portage/kde-base/kdelibs-4.5.2/work/kdelibs-4.5.2/plasma/tooltipmanager.cpp:239
#9  0xab2c161f in ComicApplet::dataUpdated (this=0xa3be920, data=...) at /mnt/data/tmp/portage/kde-base/kdeplasma-addons-4.5.1/work/kdeplasma-addons-4.5.1/applets/comic/comic.cpp:430
#10 0xab2c631d in ComicApplet::qt_metacall (this=0xa3be920, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbffb5414)
    at /mnt/data/tmp/portage/kde-base/kdeplasma-addons-4.5.1/work/kdeplasma-addons-4.5.1_build/applets/comic/comic.moc:107
[...]
[...]
#13 0xb4e097d8 in Plasma::DataContainer::dataUpdated (this=0xa6e1668, _t1=..., _t2=...) at /mnt/data/tmp/portage/kde-base/kdelibs-4.5.2/work/kdelibs-4.5.2_build/plasma/datacontainer.moc:101
Comment 3 Matthias Fuchs 2010-10-08 13:11:40 UTC
I can also confirm that behaviour and it never happened to me before, I think it might have been introduced in 4.5.2.

The problem are the following lines:
    Plasma::ToolTipContent toolTipData;
    if ( !mAdditionalText.isEmpty() ) {
        toolTipData = Plasma::ToolTipContent( mAdditionalText, QString() );
        toolTipData.setAutohide( false );
    }
    Plasma::ToolTipManager::self()->setContent( mMainWidget, toolTipData );

So setting an empty Plasma::ToolTipContent when there is already something displayed crashes it _always_.
Comment 4 Aaron J. Seigo 2010-10-08 13:32:55 UTC
SVN commit 1183775 by aseigo:

hide(QGraphicsWidget*) results in the destruction of d->tipWidget
BUG:253387


 M  +4 -2      tooltipmanager.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1183775
Comment 5 Aaron J. Seigo 2010-10-08 13:34:59 UTC
SVN commit 1183776 by aseigo:

hide(QGraphicsWidget*) results in the destruction of d->tipWidget
CCBUG:253387


 M  +2 -0      tooltipmanager.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1183776
Comment 6 Matthias Fuchs 2010-10-16 14:38:23 UTC
*** Bug 254277 has been marked as a duplicate of this bug. ***
Comment 7 Beat Wolf 2010-10-20 09:23:24 UTC
*** Bug 254661 has been marked as a duplicate of this bug. ***
Comment 8 Matthias Fuchs 2010-10-21 20:59:56 UTC
*** Bug 254901 has been marked as a duplicate of this bug. ***
Comment 9 Matthias Fuchs 2010-10-29 11:30:02 UTC
*** Bug 254055 has been marked as a duplicate of this bug. ***
Comment 10 Pino Toscano 2010-11-04 01:56:20 UTC
*** Bug 255980 has been marked as a duplicate of this bug. ***