Bug 147548 - K3B crash when Delete Key Used to Remove Wave file from Audio roject
Summary: K3B crash when Delete Key Used to Remove Wave file from Audio roject
Status: RESOLVED FIXED
Alias: None
Product: k3b
Classification: Applications
Component: Audio Project (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Sebastian Trueg
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-07-04 21:27 UTC by Nigel Hanlon
Modified: 2007-07-18 17:18 UTC (History)
0 users

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 Nigel Hanlon 2007-07-04 21:27:44 UTC
Version:           1.0.1 (using KDE KDE 3.5.7)
Installed from:    SuSE RPMs
Compiler:          gcc version 4.1.2 20061115 (prerelease) (SUSE Linux) Linux version 2.6.18.2-34-default (geeko@buildhost)
OS:                Linux

I put a disk into my CD-R drive and selected "Create Audio CD" from the KDE Autorun menu. K3B loaded as expected. I then added a single standard Microsoft PCM Wav file to the burn list. I then realized I had added the wrong file and out of habit hit the Delete key. As far as I can remember, the file wasn't actually selected. K3B then crashed.

I tried to reproduce the error but it so far hasn't resurfaced. Could be a one off crash.


My loaded K3B plugins are as follows:

Audio Encoders
> FFMpeg Decoder
> FLAC Decoder
> Libsndfile Decoder
> MAD Decoder
> Monkey Audio Decoder
> Musepack Decoder
> Ogg Vorbis Decoder
> Wave Decoder

Audio Encoders
> External Audio Encoder
> Lame MP3 Encoder
> Monkey Audio Encoder
> Ogg Encoder
> SoX Audio Encoder

Audio Output
> Alsa Audio Output Plugin 
> Arts Audio Output Plugin (Doesn't Actually Work, Complains about "Cannot Connect to Server")

Project Plugin
> Audio Metainfo Renamer
> Cddb Audio Plugin



I include the following Back trace from the Crash:

System configuration startup check disabled.

Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1234204976 (LWP 22907)]
[New Thread -1274668144 (LWP 22960)]
[New Thread -1250735216 (LWP 22929)]
[KCrash handler]
#9  0x00630061 in ?? () at /usr/lib/qt3/include/qshared.h:47
#10 0xb7ef4c71 in K3bListViewItemAnimator::slotAnimate (this=0x85079d8)
    at /usr/src/packages/BUILD/k3b-1.0.1/libk3b/tools/k3blistviewitemanimator.cpp:110
#11 0xb7ef5000 in K3bListViewItemAnimator::qt_invoke (this=0x85079d8, _id=8,
    _o=0xbf8bc5b8)
    at /usr/src/packages/BUILD/k3b-1.0.1/libk3b/tools/k3blistviewitemanimator.moc:113
#12 0xb6fdbf1d in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#13 0xb6fdcb5d in QObject::activate_signal ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#14 0xb7319299 in QTimer::timeout () from /usr/lib/qt3/lib/libqt-mt.so.3
#15 0xb6fff73f in QTimer::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#16 0xb6f7c9c7 in QApplication::internalNotify ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#17 0xb6f7d791 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#18 0xb7662ca2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4
#19 0xb6f71bd3 in QEventLoop::activateTimers ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#20 0xb6f2bc40 in QEventLoop::processEvents ()
   from /usr/lib/qt3/lib/libqt-mt.so.3
#21 0xb6f937f0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#22 0xb6f93686 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#23 0xb6f7c57f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#24 0x080b8661 in main (argc=3, argv=0xbf8bcc84)
    at /usr/src/packages/BUILD/k3b-1.0.1/src/main.cpp:148
Comment 1 Sebastian Trueg 2007-07-18 17:18:13 UTC
SVN commit 689560 by trueg:

Disalble the audio player animation before deleting the currently playing track.

BUG: 147548


 M  +6 -0      libk3b/tools/k3blistviewitemanimator.cpp  
 M  +2 -0      libk3b/tools/k3blistviewitemanimator.h  
 M  +3 -0      src/projects/k3baudiotrackview.cpp  


--- branches/extragear/kde3/multimedia/k3b/libk3b/tools/k3blistviewitemanimator.cpp #689559:689560
@@ -42,6 +42,12 @@
 }
 
 
+QListViewItem* K3bListViewItemAnimator::item() const
+{
+    return m_item;
+}
+
+
 void K3bListViewItemAnimator::init()
 {
   m_item = 0;
--- branches/extragear/kde3/multimedia/k3b/libk3b/tools/k3blistviewitemanimator.h #689559:689560
@@ -39,6 +39,8 @@
   K3bListViewItemAnimator( QListViewItem* item, int col, QObject* parent = 0, const char* name = 0 );
   ~K3bListViewItemAnimator();
 
+  QListViewItem* item() const;
+
  public slots:
   void start();
   void stop();
--- branches/extragear/kde3/multimedia/k3b/src/projects/k3baudiotrackview.cpp #689559:689560
@@ -510,6 +510,9 @@
 void K3bAudioTrackView::slotTrackRemoved( K3bAudioTrack* track )
 {
   kdDebug() << "(K3bAudioTrackView::slotTrackRemoved( " << track << " )" << endl;
+  if ( m_playerItemAnimator->item() == m_trackItemMap[track] ) {
+      m_playerItemAnimator->stop();
+  }
   delete m_trackItemMap[track];
   m_trackItemMap.erase(track);
 }
Comment 2 Sebastian Trueg 2007-07-18 17:18:49 UTC
Just a quick remark: perfect bugreport. Thanks a lot. :)