Bug 131541 - crash due to files deleted after being added to playlist
Summary: crash due to files deleted after being added to playlist
Status: RESOLVED DUPLICATE of bug 169125
Alias: None
Product: juk
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Scott Wheeler
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-07-30 09:45 UTC by Jonas Widarsson
Modified: 2009-02-16 05:03 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 Jonas Widarsson 2006-07-30 09:45:00 UTC
Version:           2.3.2 (using KDE 3.5.3, compiled sources)
Compiler:          gcc version 3.3.5-20050130 (Gentoo 3.3.5.20050130-r1, ssp-3.3.5.20050130-1, pie-8.7.7.1)
OS:                Linux (i686) release 2.6.16-gentoo-r7

If I Click on a playlist in which the first (topmost) file in it is gone (deleted outside juk when juk is not running), juk crashes.
I looked at the code and couldn't exactly figure out what is wrong, but I think it happens because the playlists are created with the files intact and restored in a later juk session without checking they really exist, so there is a crash. But if I avoid the crashy playlist and restart juk, and then open it again, the files that were deleted cause no more trouble.

Could it be that restored/reopened/loaded (terminology??) playlists are not checked for consistency, but they are saved when juk shuts down so that juk no more searches for them on next start?

Anyway, here is a backtrace:

Using host libthread_db library "/lib/libthread_db.so.1".
`system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols.
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 32019)]
[KCrash handler]
#6  FileHandle (this=0xbfc68300, f=@0x7)
    at /home/jonas/kdesvn/kdemultimedia/juk/filehandle.cpp:101
#7  0x0812159b in PlaylistItem::file (this=0x85932a0)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlistitem.cpp:83
#8  0x081075e1 in Playlist::time (this=0x858a6b8)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlist.cpp:445
#9  0x0811a67b in PlaylistCollection::time (this=0x7)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlistcollection.cpp:111
#10 0x0812ce37 in StatusLabel::updateData (this=0x84e4cc8)
    at /home/jonas/kdesvn/kdemultimedia/juk/statuslabel.cpp:123
#11 0x08120bfa in Watched::dataChanged (this=0x83629f0)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlistinterface.cpp:37
#12 0x0811c943 in PlaylistCollection::raise (this=0x83629f0, 
    playlist=0x858a6b8)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlistcollection.cpp:627
#13 0x081173e5 in PlaylistBox::slotPlaylistChanged (this=0x83629f0)
    at /home/jonas/kdesvn/kdemultimedia/juk/playlistbox.cpp:630
#14 0x08116f80 in PlaylistBox::contentsMouseReleaseEvent (this=0x8362950, 
    e=0xbfc685a0) at /home/jonas/kdesvn/kdemultimedia/juk/playlistbox.cpp:536
#15 0xb669915c in QScrollView::viewportMouseReleaseEvent (this=0x8362950, 
    e=0xbfc68b40) at qscrollview.cpp:1750
#16 0xb66987cb in QScrollView::eventFilter (this=0x8362950, obj=0x83631f8, 
    e=0xbfc68b40) at qscrollview.cpp:1501
#17 0xb66611e1 in QListView::eventFilter (this=0x8362950, o=0x83631f8, 
    e=0xbfc68b40) at qlistview.cpp:3866
#18 0xb656de21 in QObject::activate_filters (this=0x83631f8, e=0xbfc68b40)
    at qobject.cpp:903
#19 0xb656dc9f in QObject::event (this=0x83631f8, e=0xbfc68b40)
    at qobject.cpp:735
#20 0xb65a8a71 in QWidget::event (this=0x83631f8, e=0xbfc68b40)
    at qwidget.cpp:4659
#21 0xb650c7a7 in QApplication::internalNotify (this=0xbfc69040, 
    receiver=0x83631f8, e=0xbfc68b40) at qapplication.cpp:2635
#22 0xb650bfce in QApplication::notify (this=0xbfc69040, receiver=0x83631f8, 
    e=0xbfc68b40) at qapplication.cpp:2421
#23 0xb6bf944c in KApplication::notify (this=0xbfc69040, receiver=0x83631f8, 
    event=0xbfc68b40)
    at /home/jonas/kdesvn/kdelibs/kdecore/kapplication.cpp:550
#24 0xb649f5b6 in QApplication::sendSpontaneousEvent (receiver=0x83631f8, 
    event=0xbfc68b40) at qapplication.h:499
#25 0xb6498413 in QETWidget::translateMouseEvent (this=0x83631f8, 
    event=0xbfc68f00) at qapplication_x11.cpp:4297
#26 0xb6496009 in QApplication::x11ProcessEvent (this=0xbfc69040, 
    event=0xbfc68f00) at qapplication_x11.cpp:3448
#27 0xb64b11ff in QEventLoop::processEvents (this=0x82af8a0, flags=4)
    at qeventloop_x11.cpp:192
#28 0xb6520dfd in QEventLoop::enterLoop (this=0x82af8a0) at qeventloop.cpp:198
#29 0xb6520d16 in QEventLoop::exec (this=0x82af8a0) at qeventloop.cpp:145
#30 0xb650c913 in QApplication::exec (this=0xbfc69040)
    at qapplication.cpp:2758
#31 0x080fda29 in main (argc=7, argv=0x7)
    at /home/jonas/kdesvn/kdemultimedia/juk/main.cpp:95
Comment 1 Philip Rodrigues 2006-07-30 20:48:59 UTC
Confirmed on r565716. 
Comment 2 Michael Pyne 2009-02-16 05:03:31 UTC
Dup oop ee dup

*** This bug has been marked as a duplicate of bug 169125 ***