Bug 66713 - crash when scanning into subgallery, in ~KFileIconViewItem()
Summary: crash when scanning into subgallery, in ~KFileIconViewItem()
Status: RESOLVED FIXED
Alias: None
Product: kooka
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Jonathan Marten
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-27 21:57 UTC by Ralf Holzer
Modified: 2020-12-18 08:28 UTC (History)
1 user (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 Ralf Holzer 2003-10-27 21:57:40 UTC
Version:           0.41 (using KDE 3.1.93 (3.2 beta 1), compiled sources)
Compiler:          gcc version 3.3 20030226 (prerelease) (SuSE Linux)
OS:          Linux (i686) release 2.4.22

Kooka sometimes crashes when scanning into a sub-gallery/directory. It doesn't crash when
scanning into the root gallery. 

Here's the backtrace:

[New Thread 16384 (LWP 16651)]
0x41457cf7 in waitpid () from /lib/libpthread.so.0
#0  0x41457cf7 in waitpid () from /lib/libpthread.so.0
#1  0x40a322e8 in KCrash::defaultCrashHandler(int) (sig=11) at kcrash.cpp:242
#2  0x41456895 in __pthread_sighandler () from /lib/libpthread.so.0
#3  <signal handler called>
#4  0x4054e172 in ~KFileIconViewItem (this=0x82cce18) at kfileiconview.h:57
#5  0x08096854 in ~ThumbViewItem (this=0x82cce18)
    at /build/kde/qt-copy/include/qmap.h:457
#6  0x4104f493 in QIconView::clear() (this=0x817e180)
    at iconview/qiconview.cpp:3995
#7  0x08096544 in ThumbView::clear() (this=0x8162950) at thumbview.cpp:419
#8  0x0806bd06 in KookaView::slShowThumbnails(KFileTreeViewItem*, bool) (
    this=0x8158280, dirKfi=0x82592b8, forceRedraw=false) at kookaview.cpp:896
#9  0x0806d4ab in KookaView::qt_invoke(int, QUObject*) (this=0x8158280, 
    _id=24, _o=0xbfffdd10) at /build/kde/qt-copy/include/private/qucom_p.h:312
#10 0x40e7fe57 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x816b110, clist=0x81b0998, o=0xbfffdd10) at kernel/qobject.cpp:2333
#11 0x080920a0 in ScanPackager::showThumbnails(KFileTreeViewItem*) (
    this=0x816b110, t0=0x82592b8) at scanpackager.moc:323
#12 0x0808cccf in ScanPackager::slClicked(QListViewItem*) (this=0x816b110, 
    newItem=0x82e1750) at scanpackager.cpp:539
#13 0x0808ab3b in ScanPackager::slotDecorate(KFileTreeViewItem*) (
    this=0x816b110, item=0x82e1750) at scanpackager.cpp:284
#14 0x0808aeb2 in ScanPackager::slotDecorate(KFileTreeBranch*, QPtrList<KFileTreeViewItem> const&) (this=0x816b110, branch=0x8259740, list=@0xbfffe260)
    at scanpackager.cpp:304
#15 0x080925dc in ScanPackager::qt_invoke(int, QUObject*) (this=0x816b110, 
    _id=128, _o=0xbfffe0b0) at /build/kde/qt-copy/include/private/qucom_p.h:312
#16 0x40e7ffa4 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x8259740, clist=0x825ca38, o=0xbfffe0b0) at kernel/qobject.cpp:2357
#17 0x405c7fc2 in KFileTreeBranch::newTreeViewItems(KFileTreeBranch*, QPtrList<KFileTreeViewItem> const&) (this=0x8259740, t0=0x8259740, t1=@0xbfffe260)
    at kfiletreebranch.moc:180
#18 0x405c461f in KFileTreeBranch::addItems(QPtrList<KFileItem> const&) (
    this=0x8259740, list=@0x0) at kfiletreebranch.cpp:208
#19 0x405c81b9 in KFileTreeBranch::qt_invoke(int, QUObject*) (this=0x8259740, 
    _id=11, _o=0xbfffe390) at /build/kde/qt-copy/include/private/qucom_p.h:312
#20 0x40e7fe57 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x8259740, clist=0x825be68, o=0xbfffe390) at kernel/qobject.cpp:2333
#21 0x404e968a in KDirLister::newItems(QPtrList<KFileItem> const&) (
    this=0x8259740, t0=@0x82cd8d0) at kdirlister.moc:312
#22 0x404e874a in KDirLister::emitItems() (this=0x8259740)
    at kdirlister.cpp:2008
#23 0x404e2254 in KDirListerCache::slotUpdateResult(KIO::Job*) (
    this=0x82598c0, j=0x8259740) at kdirlister.cpp:1342
#24 0x404ea2b9 in KDirListerCache::qt_invoke(int, QUObject*) (this=0x82598c0, 
    _id=10, _o=0xbfffe650) at /build/kde/qt-copy/include/private/qucom_p.h:312
#25 0x40e7fe57 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x82e0c80, clist=0x82cd940, o=0xbfffe650) at kernel/qobject.cpp:2333
#26 0x4042e7b7 in KIO::Job::result(KIO::Job*) (this=0x82e0c80, t0=0x82e0c80)
    at jobclasses.moc:156
#27 0x40418884 in KIO::Job::emitResult() (this=0x82e0c80) at job.cpp:204
#28 0x4041a32b in KIO::SimpleJob::slotFinished() (this=0x82e0c80)
    at job.cpp:524
#29 0x4042236c in KIO::ListJob::slotFinished() (this=0x82e0c80) at job.cpp:1768
#30 0x40430d29 in KIO::ListJob::qt_invoke(int, QUObject*) (this=0x82e0c80, 
    _id=16, _o=0xbfffe980) at jobclasses.moc:1350
#31 0x40e7fe57 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x82cf258, clist=0x82cecf8, o=0xbfffe980) at kernel/qobject.cpp:2333
#32 0x40e7fcf6 in QObject::activate_signal(int) (this=0x82cf258, signal=6)
    at kernel/qobject.cpp:2302
#33 0x4040b989 in KIO::SlaveInterface::finished() (this=0x82cf258)
    at /build/kde/qt-copy/include/qmetaobject.h:261
#34 0x4040856b in KIO::SlaveInterface::dispatch(int, QMemArray<char> const&) (
    this=0x82cf258, _cmd=104, rawdata=@0xbfffec80) at slaveinterface.cpp:255
#35 0x40407cb7 in KIO::SlaveInterface::dispatch() (this=0x82cf258)
    at slaveinterface.cpp:191
#36 0x40404c07 in KIO::Slave::gotInput() (this=0x82cf258) at slave.cpp:294
#37 0x404071a9 in KIO::Slave::qt_invoke(int, QUObject*) (this=0x82cf258, 
    _id=4, _o=0xbfffee00) at slave.moc:113
#38 0x40e7fe57 in QObject::activate_signal(QConnectionList*, QUObject*) (
    this=0x82cebd0, clist=0x82d9bc0, o=0xbfffee00) at kernel/qobject.cpp:2333
#39 0x40e801c9 in QObject::activate_signal(int, int) (this=0x82cebd0, 
    signal=2, param=49) at kernel/qobject.cpp:2426
#40 0x411c4da9 in QSocketNotifier::activated(int) (this=0x82cebd0, t0=49)
    at .moc/debug-shared-mt/moc_qsocketnotifier.cpp:85
#41 0x40e9fc78 in QSocketNotifier::event(QEvent*) (this=0x82cebd0, 
    e=0xbffff090) at kernel/qsocketnotifier.cpp:268
#42 0x40e1d035 in QApplication::internalNotify(QObject*, QEvent*) (
    this=0xbffff310, receiver=0x82cebd0, e=0xbffff090)
    at kernel/qapplication.cpp:2582
#43 0x40e1c4f2 in QApplication::notify(QObject*, QEvent*) (this=0xbffff310, 
    receiver=0x82cebd0, e=0xbffff090) at kernel/qapplication.cpp:2305
#44 0x40989033 in KApplication::notify(QObject*, QEvent*) (this=0xbffff310, 
    receiver=0x82cebd0, event=0xbffff090) at kapplication.cpp:509
#45 0x40db3f99 in QApplication::sendEvent(QObject*, QEvent*) (
    receiver=0x82cebd0, event=0xbffff090) at kernel/qapplication.h:490
#46 0x40e0b0b0 in QEventLoop::activateSocketNotifiers() (this=0x810b5e0)
    at kernel/qeventloop_unix.cpp:579
#47 0x40dc5a93 in QEventLoop::processEvents(unsigned) (this=0x810b5e0, flags=4)
    at kernel/qeventloop_x11.cpp:340
#48 0x40e329fe in QEventLoop::enterLoop() (this=0x810b5e0)
    at kernel/qeventloop.cpp:198
#49 0x40e3291a in QEventLoop::exec() (this=0x810b5e0)
    at kernel/qeventloop.cpp:145
#50 0x40e1d1b5 in QApplication::exec() (this=0xbffff310)
    at kernel/qapplication.cpp:2705
#51 0x08063610 in main (argc=5, argv=0xbffff484) at main.cpp:117
#52 0x415938ae in __libc_start_main () from /lib/libc.so.6
Comment 1 Jonathan Marten 2008-01-22 19:13:39 UTC
Please confirm whether this is still a problem with a recent version of KDE (3.5.8, no Kooka in 4.0).
Comment 2 Jonathan Marten 2008-02-19 19:31:01 UTC
Possibly same backtrace as bug 132701.
Comment 3 Jonathan Marten 2008-05-17 13:40:17 UTC
SVN commit 808701 by marten:

Replaced the home-made thumbnail preview pane with a KDirOperator/KFileIconView
combination.  Eliminates some possible crashes (bugs 66713, 132701, 144074) related
to the ownership and destruction of KFileIconViewItem's (see the comments in
thumbview.cpp for more discussion).  Also simplifies the communication between
the scan packager and the previewer, since most file operations are noticed
automatically and the thumbnail view updated.

Implement a popup menu for the thumbnail view, with much the same operations
as the gallery tree - bug 69464

CCBUG:69464
CCBUG:66713
CCBUG:132701
CCBUG:144074


 M  +2 -2      kooka/Makefile.am  
 M  +7 -2      kooka/kooka.cpp  
 M  +60 -75    kooka/kookapref.cpp  
 M  +1 -5      kooka/kookapref.h  
 M  +65 -113   kooka/kookaview.cpp  
 M  +9 -7      kooka/kookaview.h  
 M  +75 -77    kooka/scanpackager.cpp  
 M  +6 -4      kooka/scanpackager.h  
 M  +220 -371  kooka/thumbview.cpp  
 M  +49 -100   kooka/thumbview.h  
 A             kooka/thumbviewdiroperator.cpp   [License: GPL (v2) (+Qt exception)]
 A             kooka/thumbviewdiroperator.h   [License: GPL (v2) (+Qt exception)]
 D             kooka/thumbviewitem.cpp  
 D             kooka/thumbviewitem.h  
 M  +1 -1      libkscan/kscancontrols.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=808701
Comment 4 Jonathan Marten 2008-05-17 13:50:36 UTC
Thumbnail gallery rewritten in SVN version to hopefully eliminate this crash.
Please test that from branches/work/kooka-kde3 if possible, see http://techbase.kde.org/Projects/Kooka for build instructions.
Comment 5 Justin Zobel 2020-12-03 21:39:52 UTC
Thank you for the report, Ralf.

As it has been a while since this was reported, can you please test and confirm if this issue is still occurring or if this bug report can be marked as resolved.

I have set the bug status to "needsinfo" pending your response, please change back to "reported" or "resolved/worksforme" when you respond, thank you.
Comment 6 Bug Janitor Service 2020-12-18 04:34:35 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!