clementine-player / Clementine

:tangerine: Clementine Music Player
https://www.clementine-player.org/
GNU General Public License v3.0
3.68k stars 670 forks source link

Segfault when adding album to Various Artists and restarting #3376

Open Clementine-Issue-Importer opened 10 years ago

Clementine-Issue-Importer commented 10 years ago

From fuuze...@fuuzetsu.co.uk on December 24, 2012 14:46:21

What steps will reproduce the problem? 1. Sort the library by Artist/Album - Year

  1. Right click on the album -> Show in various artists
  2. Turn off Clementine. Turn it back on. What is the expected output? What do you see instead? Clementine should start as normal and the album should still show in various artists. Instead, it segfaults. What version of the product are you using? On what operating system? Version 1.1.1-214-g29c61f1 Linux ShanaX61s 3.7.0-rc4 #1 SMP Mon Nov 5 18:34:41 GMT 2012 i686 Intel(R) Core(TM)2 Duo CPU L7700 @ 1.80GHz GenuineIntel GNU/Linux Please provide any additional information below. I was trying to replicate an issue where someone on IRC was adding the album to various artists but the setting didn't stick between Clementine restarts. In my case, it makes the player segfault. Running it in gdb sometimes circumvents the segfault (Look, it's everyone's favourite Heisenbug! Are you excited yet?) which allows me use `Don't show album in various artists' which makes the segfault go away. I did manage to luck out and get it to segfault in gdb. Before I post the backtrace, I should mention that I don't believe that I have the album locally (that is, Clementine would be unable to read the songs, write to them etc. etc.).

Here's the backtrace: Program received signal SIGSEGV, Segmentation fault. 0x08294594 in Playlist::GetTotalLength (this=0xaa841fc8) at /home/shana/Programming/clementine-player/src/playlist/playlist.cpp:1833 1833 quint64 length = item->Metadata().length_nanosec(); (gdb) bt

0 0x08294594 in Playlist::GetTotalLength (this=0xaa841fc8) at /home/shana/Programming/clementine-player/src/playlist/playlist.cpp:1833

1 0x082b62cd in PlaylistManager::UpdateSummaryText (this=0x8ead138) at /home/shana/Programming/clementine-player/src/playlist/playlistmanager.cpp:317

2 0x083ba9b8 in PlaylistManager::qt_static_metacall (_o=0x8ead138, _c=QMetaObject::InvokeMetaMethod, _id=27, _a=0xbfffe18c)

at /home/shana/Programming/clementine-player/src/playlist/moc_playlistmanager.cxx:398

3 0xb7d18322 in QMetaObject::activate (sender=0x9e619f8, m=0x86a98c0 Playlist::staticMetaObject, local_signal_index=4, argv=0x0) at kernel/qobject.cpp:3547

4 0x083b96c7 in Playlist::PlaylistChanged (this=0x9e619f8) at /home/shana/Programming/clementine-player/src/playlist/moc_playlist.cxx:272

5 0x083b97fd in Playlist::qt_static_metacall (_o=0x9e619f8, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfffe2d0)

at /home/shana/Programming/clementine-player/src/playlist/moc_playlist.cxx:170

6 0xb7d18322 in QMetaObject::activate (sender=0x9e619f8, m=0x8dcc8e0 QAbstractItemModel::staticMetaObject, local_signal_index=5, argv=0xbfffe2d0)

at kernel/qobject.cpp:3547

7 0xb7d68b0f in QAbstractItemModel::rowsInserted (this=0x9e619f8, _t1=..., _t2=0, _t3=126) at .moc/release-shared/moc_qabstractitemmodel.cpp:197

8 0xb7cfcc9e in QAbstractItemModel::endInsertRows (this=0x9e619f8) at kernel/qabstractitemmodel.cpp:2433

9 0x0829af20 in Playlist::InsertItemsWithoutUndo (this=0x9e619f8, items=..., pos=0, enqueue=false)

at /home/shana/Programming/clementine-player/src/playlist/playlist.cpp:983

10 0x082bb468 in PlaylistUndoCommands::InsertItems::redo (this=0x9446cd8) at /home/shana/Programming/clementine-player/src/playlist/playlistundocommands.cpp:41

11 0xb6ea5155 in QUndoStack::push (this=0x9024b00, cmd=0x9446cd8) at util/qundostack.cpp:583

12 0x0829b54d in Playlist::InsertItems (this=0x9e619f8, itemsIn=..., pos=0, play_now=false, enqueue=false)

at /home/shana/Programming/clementine-player/src/playlist/playlist.cpp:949

13 0x0829d1ae in Playlist::ItemsLoaded (this=0x9e619f8) at /home/shana/Programming/clementine-player/src/playlist/playlist.cpp:1348

14 0x083b97a7 in Playlist::qt_static_metacall (_o=0x9e619f8, _c=QMetaObject::InvokeMetaMethod, _id=30, _a=0xbfffe79c)

at /home/shana/Programming/clementine-player/src/playlist/moc_playlist.cxx:196

15 0xb7d18322 in QMetaObject::activate (sender=0x9c29470, m=0xb7e60794 QFutureWatcherBase::staticMetaObject, local_signal_index=1, argv=0x0)

at kernel/qobject.cpp:3547

16 0xb7d66357 in QFutureWatcherBase::finished (this=0x9c29470) at .moc/release-shared/moc_qfuturewatcher.cpp:141

17 0xb7be4fa4 in QFutureWatcherBasePrivate::sendCallOutEvent (this=0x8f891b0, event=0xaac1cba8) at concurrent/qfuturewatcher.cpp:439

18 0xb7be527a in QFutureWatcherBase::event (this=0x9c29470, event=0xaac1cba8) at concurrent/qfuturewatcher.cpp:344

19 0xb67d7694 in QApplicationPrivate::notify_helper (this=0x8e0d500, receiver=0x9c29470, e=0xaac1cba8) at kernel/qapplication.cpp:4551

20 0xb67dc2fb in QApplication::notify (this=0xbffff144, receiver=0x9c29470, e=0xaac1cba8) at kernel/qapplication.cpp:3933

21 0xb7d0263b in QCoreApplication::notifyInternal (this=0xbffff144, receiver=0x9c29470, event=0xaac1cba8) at kernel/qcoreapplication.cpp:915

22 0xb7d0632d in sendEvent (event=0xaac1cba8, receiver=0x9c29470) at kernel/qcoreapplication.h:231

23 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x8e09fb8) at kernel/qcoreapplication.cpp:1539

24 0xb7d066cd in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1432

25 0xb7d32c64 in sendPostedEvents () at kernel/qcoreapplication.h:236

26 postEventSourceDispatch (s=0x8e0f4e8) at kernel/qeventdispatcher_glib.cpp:279

27 0xb777a663 in g_main_dispatch (context=0x8e0c980) at gmain.c:2539

28 g_main_context_dispatch (context=0x8e0c980) at gmain.c:3075

29 0xb777a9f8 in g_main_context_iterate (context=0x8e0c980, block=1, dispatch=1, self=) at gmain.c:3146

30 0xb777aadf in g_main_context_iteration (context=0x8e0c980, may_block=1) at gmain.c:3207

31 0xb7d32ddc in QEventDispatcherGlib::processEvents (this=0x8e0c8a0, flags=...) at kernel/qeventdispatcher_glib.cpp:424

32 0xb6885515 in QGuiEventDispatcherGlib::processEvents (this=0x8e0c8a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204

33 0xb7d011c9 in QEventLoop::processEvents (this=0xbfffeed4, flags=...) at kernel/qeventloop.cpp:149

34 0xb7d014da in QEventLoop::exec (this=0xbfffeed4, flags=...) at kernel/qeventloop.cpp:204

35 0xb7d0678f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187

36 0xb67d5587 in QApplication::exec () at kernel/qapplication.cpp:3812

37 0x081d2a50 in main (argc=141229064, argv=0x8f48290) at /home/shana/Programming/clementine-player/src/main.cpp:464

Original issue: http://code.google.com/p/clementine-player/issues/detail?id=3375

Clementine-Issue-Importer commented 10 years ago

From fuuze...@fuuzetsu.co.uk on December 24, 2012 05:50:59

I should add that I DO have some albums that are in Various Artists, but those are there by default as I have never manually added any.

Clementine-Issue-Importer commented 10 years ago

From davidsansome on December 25, 2012 06:18:23

Sounds like you want to fix this one too :)