Bug 279973 - Amarok crashes with phonon-vlc when playing a FLAC file (floating point exception)
Summary: Amarok crashes with phonon-vlc when playing a FLAC file (floating point excep...
Status: RESOLVED DUPLICATE of bug 261684
Alias: None
Product: phonon-backend-vlc
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 0.4.0
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: 0.4.2
Assignee: Harald Sitter
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-12 15:04 UTC by Mathias Panzenböck
Modified: 2012-02-23 06:34 UTC (History)
5 users (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 Mathias Panzenböck 2011-08-12 15:04:36 UTC
Version:           0.4.0 (using KDE 4.6.5) 
OS:                Linux

When I try to play a FLAC file with Amarok using Phonon-VLC I get a floating point exception. VLC on its own and Dragon Player (also using Phonon-VLC) do not crash! Also the FLAC files should be ok. Running them through flac -a does not tell my any errors as far as I can see. Some of the files I created from audio CDs using flac, some others I purchased from magnatune.com.

I had similar crashes with the Phonon-Xine backend every now and then month ago. But this crashes stopped to happen at some point. I switched to the VLC backend because the Xine backend stopped to produce any sound and started to crash on every song change/stop (using Amarok).

I compiled Amarok from GIT:
commit 3513760bfcd3866539084081fa3c1b07295da827
Author: Script Kiddy <scripty@kde.org>
Date:   Fri Aug 12 08:39:17 2011 +0200

I also compiled Phonon-VLC 0.4.0 myself. I did this because I still use Fedora 14 which uses KDE 4.6.x for which Phonon-VLC 0.4.0 is the last compatible version. While this is provided by Fedora, this version of Phonon-VLC misses some mime types in the list of supported mime types. So I simply added them:
https://github.com/panzi/phonon-vlc/tree/module_files_for_kde_4.6


Backtrace:

Application: Amarok (amarok), signal: Floating point exception
[Current thread is 1 (Thread 0x7f1f234a9880 (LWP 10074))]

Thread 14 (Thread 0x7f1f2340e700 (LWP 10077)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f034dd762 in LoopRequest (data=0x2090870) at playlist/thread.c:539
#2  Thread (data=0x2090870) at playlist/thread.c:586
#3  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#5  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 13 (Thread 0x7f1ecb575700 (LWP 10083)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f2070257b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f1f1e8290b4 in ?? () from /usr/lib64/libthreadweaver.so.4
#3  0x00007f1f1e82b743 in ?? () from /usr/lib64/libthreadweaver.so.4
#4  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#5  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#6  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#7  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#8  0x00007f1f1e82a52f in ?? () from /usr/lib64/libthreadweaver.so.4
#9  0x00007f1f1e82a5b8 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4
#10 0x00007f1f20701e95 in ?? () from /usr/lib64/libQtCore.so.4
#11 0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#12 0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#13 0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 12 (Thread 0x7f1ec9719700 (LWP 10084)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f2070257b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f1f1e8290b4 in ?? () from /usr/lib64/libthreadweaver.so.4
#3  0x00007f1f1e82b743 in ?? () from /usr/lib64/libthreadweaver.so.4
#4  0x00007f1f1e82a52f in ?? () from /usr/lib64/libthreadweaver.so.4
#5  0x00007f1f1e82a5b8 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4
#6  0x00007f1f20701e95 in ?? () from /usr/lib64/libQtCore.so.4
#7  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#8  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#9  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 11 (Thread 0x7f1ec8d0c700 (LWP 10087)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f2070257b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f1f1e8290b4 in ?? () from /usr/lib64/libthreadweaver.so.4
#3  0x00007f1f1e82b743 in ?? () from /usr/lib64/libthreadweaver.so.4
#4  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#5  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#6  0x00007f1f1e82a52f in ?? () from /usr/lib64/libthreadweaver.so.4
#7  0x00007f1f1e82a5b8 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4
#8  0x00007f1f20701e95 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#10 0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#11 0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 10 (Thread 0x7f1ebfffe700 (LWP 10088)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f2070257b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007f1f1e8290b4 in ?? () from /usr/lib64/libthreadweaver.so.4
#3  0x00007f1f1e82b743 in ?? () from /usr/lib64/libthreadweaver.so.4
#4  0x00007f1f1e82b75c in ?? () from /usr/lib64/libthreadweaver.so.4
#5  0x00007f1f1e82a52f in ?? () from /usr/lib64/libthreadweaver.so.4
#6  0x00007f1f1e82a5b8 in ThreadWeaver::Thread::run() () from /usr/lib64/libthreadweaver.so.4
#7  0x00007f1f20701e95 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#9  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#10 0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f1ebf1e5700 (LWP 10090)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f17efb944 in ?? () from /usr/lib64/libQtWebKit.so.4
#2  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#3  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#4  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f1ebd9dd700 (LWP 10091)):
#0  0x00007f1f203cb093 in select () from /lib64/libc.so.6
#1  0x00007f1f207cb6cd in ?? () from /usr/lib64/libQtCore.so.4
#2  0x00007f1f20701e95 in ?? () from /usr/lib64/libQtCore.so.4
#3  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#5  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f1ebd1dc700 (LWP 10093)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f1d846bb4 in ?? () from /usr/lib64/libQtScript.so.4
#2  0x00007f1f1d846be9 in ?? () from /usr/lib64/libQtScript.so.4
#3  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#5  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f1e972f6700 (LWP 10142)):
#0  0x00007f1f1f417de5 in pthread_join () from /lib64/libpthread.so.0
#1  0x00007f1f0354061f in vlc_thread_join (p_this=0x7f1e84005e60) at misc/threads.c:194
#2  0x00007f1f034f2ccf in input_DecoderDelete (p_dec=0x7f1e84005e60) at input/decoder.c:334
#3  0x00007f1f034f5101 in EsDestroyDecoder (out=<value optimized out>, p_es=<value optimized out>) at input/es_out.c:1612
#4  0x00007f1f034f7720 in EsUnselect (out=0x7097ca0, es=0x7f1e840040c0, b_update=true) at input/es_out.c:1723
#5  0x00007f1f034f8362 in EsOutControlLocked (out=0x7097ca0, i_query=<value optimized out>, args=<value optimized out>) at input/es_out.c:2196
#6  EsOutControl (out=0x7097ca0, i_query=<value optimized out>, args=<value optimized out>) at input/es_out.c:2702
#7  0x00007f1f034fc03e in es_out_vaControl (out=<value optimized out>, i_query=<value optimized out>) at ../include/vlc_es_out.h:126
#8  es_out_Control (out=<value optimized out>, i_query=<value optimized out>) at ../include/vlc_es_out.h:135
#9  0x00007f1f034fdc9e in ControlLocked (p_out=<value optimized out>, i_query=<value optimized out>, args=<value optimized out>) at input/es_out_timeshift.c:620
#10 Control (p_out=<value optimized out>, i_query=<value optimized out>, args=<value optimized out>) at input/es_out_timeshift.c:718
#11 0x00007f1f034ff57e in es_out_vaControl (out=<value optimized out>, i_query=<value optimized out>) at ../include/vlc_es_out.h:126
#12 es_out_Control (out=<value optimized out>, i_query=<value optimized out>) at ../include/vlc_es_out.h:135
#13 0x00007f1f034ffbb5 in es_out_SetMode (p_input=0x63957f0) at input/es_out.h:90
#14 End (p_input=0x63957f0) at input/input.c:1379
#15 0x00007f1f0350604d in Run (p_this=0x63957f0) at input/input.c:549
#16 0x00007f1f03540354 in thread_entry (data=<value optimized out>) at misc/threads.c:58
#17 0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#18 0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#19 0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f1e97eff700 (LWP 10144)):
[KCrash Handler]
#6  0x00007f1eeabb699f in SendAudio (p_stream=<value optimized out>, id=0x7f1e78c0c500, p_buffer=0x7f1e78022870) at smem.c:372
#7  Send (p_stream=<value optimized out>, id=0x7f1e78c0c500, p_buffer=0x7f1e78022870) at smem.c:335
#8  0x00007f1eeb9ccc56 in sout_StreamIdSend (p_stream=<value optimized out>, id=0x7f1e78c08650, p_buffer=<value optimized out>) at ../../../include/vlc_sout.h:239
#9  Send (p_stream=<value optimized out>, id=0x7f1e78c08650, p_buffer=<value optimized out>) at transcode.c:723
#10 0x00007f1eec1ed002 in sout_StreamIdSend (p_stream=<value optimized out>, id=0x7f1e78001df0, p_buffer=<value optimized out>) at ../../include/vlc_sout.h:239
#11 Send (p_stream=<value optimized out>, id=0x7f1e78001df0, p_buffer=<value optimized out>) at duplicate.c:295
#12 0x00007f1f0355b012 in sout_InputSendBuffer (p_input=0x7f1e78c0c4a0, p_buffer=0x7f1e78c07400) at stream_output/stream_output.c:283
#13 0x00007f1f034f11ec in DecoderPlaySout (p_dec=0x7f1e84005e60, p_block=<value optimized out>) at input/decoder.c:1660
#14 DecoderProcessSout (p_dec=0x7f1e84005e60, p_block=<value optimized out>) at input/decoder.c:1784
#15 DecoderProcess (p_dec=0x7f1e84005e60, p_block=<value optimized out>) at input/decoder.c:1984
#16 0x00007f1f034f1c1b in DecoderThread (p_this=0x7f1e84005e60) at input/decoder.c:892
#17 0x00007f1f03540354 in thread_entry (data=<value optimized out>) at misc/threads.c:58
#18 0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#19 0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#20 0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f1ed2042700 (LWP 10145)):
#0  0x00007f1f1f41b3b4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f1f03537604 in block_FifoGet (p_fifo=0x7f1e78c07510) at misc/block.c:625
#2  0x00007f1f034f1bc5 in DecoderThread (p_this=0x7f1e78001ec0) at input/decoder.c:879
#3  0x00007f1f03540354 in thread_entry (data=<value optimized out>) at misc/threads.c:58
#4  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#5  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#6  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f1e97af7700 (LWP 10148)):
#0  0x00007f1f203c9283 in poll () from /lib64/libc.so.6
#1  0x00007f1f1896c3bf in ?? () from /usr/lib64/libpulse.so.0
#2  0x00007f1f1895e166 in pa_mainloop_poll () from /usr/lib64/libpulse.so.0
#3  0x00007f1f1895e799 in pa_mainloop_iterate () from /usr/lib64/libpulse.so.0
#4  0x00007f1f1895e850 in pa_mainloop_run () from /usr/lib64/libpulse.so.0
#5  0x00007f1f1896c35b in ?? () from /usr/lib64/libpulse.so.0
#6  0x00007f1f13781888 in ?? () from /usr/lib64/libpulsecommon-0.9.21.so
#7  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#8  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#9  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f1e97dfe700 (LWP 10149)):
#0  0x00007f1f1f41d480 in sem_wait () from /lib64/libpthread.so.0
#1  0x00007f1f03554e5c in vlc_sem_wait (sem=0x7f1e70001050) at misc/pthread.c:445
#2  0x00007f1eef0cb009 in ALSAThread (data=<value optimized out>) at alsa.c:776
#3  0x00007f1f160cf56c in ?? () from /usr/lib64/libGL.so.1
#4  0x00007f1f1f416ccb in start_thread () from /lib64/libpthread.so.0
#5  0x00007f1f203d2c2d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f1f234a9880 (LWP 10074)):
#0  0x00007f1f1f417de5 in pthread_join () from /lib64/libpthread.so.0
#1  0x00007f1f0354061f in vlc_thread_join (p_this=0x63957f0) at misc/threads.c:194
#2  0x00007f1f037a9985 in release_input_thread (p_mi=0x2074130, b_input_abort=true) at control/media_player.c:126
#3  0x00007f1f037ab387 in libvlc_media_player_stop (p_mi=0x2074130) at control/media_player.c:761
#4  0x00007f1f039d5e05 in Phonon::VLC::MediaObject::~MediaObject (this=0x2073070, __in_chrg=<value optimized out>) at /home/panzi/software/phonon-vlc/vlc/mediaobject.cpp:106
#5  0x00007f1f039d5e89 in Phonon::VLC::MediaObject::~MediaObject (this=0x2073070, __in_chrg=<value optimized out>) at /home/panzi/software/phonon-vlc/vlc/mediaobject.cpp:108
#6  0x00007f1f1e0cac04 in Phonon::MediaNodePrivate::deleteBackendObject() () from /usr/lib64/libphonon.so.4
#7  0x00007f1f1e0b9598 in ?? () from /usr/lib64/libphonon.so.4
#8  0x00007f1f1e0b9849 in ?? () from /usr/lib64/libphonon.so.4
#9  0x00007f1f203289f1 in exit () from /lib64/libc.so.6
#10 0x00007f1f212169d8 in ?? () from /usr/lib64/libQtGui.so.4
#11 0x00007f1f22ec8cd8 in KApplication::xioErrhandler(_XDisplay*) () from /usr/lib64/libkdeui.so.5
#12 0x00007f1f21cca87e in _XIOError () from /usr/lib64/libX11.so.6
#13 0x00007f1f21cd1e47 in _XReply () from /usr/lib64/libX11.so.6
#14 0x00007f1f21cad925 in XGetImage () from /usr/lib64/libX11.so.6
#15 0x00007f1f21294e1b in QX11PixmapData::toImage(QRect const&) const () from /usr/lib64/libQtGui.so.4
#16 0x00007f1f2129117a in QX11PixmapData::toImage() const () from /usr/lib64/libQtGui.so.4
#17 0x00007f1f2127f9f0 in QPixmap::toImage() const () from /usr/lib64/libQtGui.so.4
#18 0x00007f1f212bf3c3 in QBrush::textureImage() const () from /usr/lib64/libQtGui.so.4
#19 0x00007f1f2136ee7d in ?? () from /usr/lib64/libQtGui.so.4
#20 0x00007f1f2136fbfa in ?? () from /usr/lib64/libQtGui.so.4
#21 0x00007f1f2136fefa in ?? () from /usr/lib64/libQtGui.so.4
#22 0x00007f1f212e1d7d in QPaintEngineEx::draw(QVectorPath const&) () from /usr/lib64/libQtGui.so.4
#23 0x00007f1f212f15d4 in ?? () from /usr/lib64/libQtGui.so.4
#24 0x00007f1f212f32d8 in QPainter::drawRects(QRectF const*, int) () from /usr/lib64/libQtGui.so.4
#25 0x00007f1f212f72cf in QPainter::drawPixmap(QRectF const&, QPixmap const&, QRectF const&) () from /usr/lib64/libQtGui.so.4
#26 0x00007f1f22226c00 in Playlist::PrettyItemDelegate::paintItem (this=0x42efed0, config=..., painter=0x7fff01c06500, option=..., index=..., headerRow=true) at /home/panzi/software/amarok/src/playlist/view/listview/PrettyItemDelegate.cpp:327
#27 0x00007f1f222283f0 in Playlist::PrettyItemDelegate::paint (this=0x42efed0, painter=0x7fff01c06500, option=..., index=...) at /home/panzi/software/amarok/src/playlist/view/listview/PrettyItemDelegate.cpp:176
#28 0x00007f1f216d876c in QListView::paintEvent(QPaintEvent*) () from /usr/lib64/libQtGui.so.4
#29 0x00007f1f2222ad08 in Playlist::PrettyListView::paintEvent (this=0x42eb290, event=0x7fff01c07210) at /home/panzi/software/amarok/src/playlist/view/listview/PrettyListView.cpp:669
#30 0x00007f1f211fb6ee in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#31 0x00007f1f215a6936 in QFrame::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#32 0x00007f1f216b7553 in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib64/libQtGui.so.4
#33 0x00007f1f207eb327 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#34 0x00007f1f211a9cf1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#35 0x00007f1f211ae8da in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#36 0x00007f1f22ec9f46 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#37 0x00007f1f207eb19c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#38 0x00007f1f211f85c8 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#39 0x00007f1f211f918f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#40 0x00007f1f211f830a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#41 0x00007f1f211f918f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#42 0x00007f1f211f830a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#43 0x00007f1f211f918f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#44 0x00007f1f211f830a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#45 0x00007f1f211f918f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#46 0x00007f1f211f830a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#47 0x00007f1f211f918f in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#48 0x00007f1f211f904c in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#49 0x00007f1f211f830a in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib64/libQtGui.so.4
#50 0x00007f1f213bbb09 in ?? () from /usr/lib64/libQtGui.so.4
#51 0x00007f1f211ee790 in QWidgetPrivate::syncBackingStore() () from /usr/lib64/libQtGui.so.4
#52 0x00007f1f211fbbf2 in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#53 0x00007f1f215c05fb in QMainWindow::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#54 0x00007f1f211a9d24 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#55 0x00007f1f211ae8da in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#56 0x00007f1f22ec9f46 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#57 0x00007f1f207eb19c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#58 0x00007f1f213b78f9 in ?? () from /usr/lib64/libQtGui.so.4
#59 0x00007f1f211edff8 in QWidget::repaint(QRect const&) () from /usr/lib64/libQtGui.so.4
#60 0x00007f1f211ee0b3 in QWidget::repaint() () from /usr/lib64/libQtGui.so.4
#61 0x00007f1f21565298 in ?? () from /usr/lib64/libQtGui.so.4
#62 0x00007f1f2156552c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQtGui.so.4
#63 0x00007f1f21621d8a in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQtGui.so.4
#64 0x00007f1f211fb73c in QWidget::event(QEvent*) () from /usr/lib64/libQtGui.so.4
#65 0x00007f1f211a9d24 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#66 0x00007f1f211af15a in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#67 0x00007f1f22ec9f46 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#68 0x00007f1f207eb19c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#69 0x00007f1f211aad25 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib64/libQtGui.so.4
#70 0x00007f1f21229598 in ?? () from /usr/lib64/libQtGui.so.4
#71 0x00007f1f21227c79 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib64/libQtGui.so.4
#72 0x00007f1f2124f6a6 in ?? () from /usr/lib64/libQtGui.so.4
#73 0x0000003f7ec41e33 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#74 0x0000003f7ec42610 in ?? () from /lib64/libglib-2.0.so.0
#75 0x0000003f7ec428ad in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#76 0x00007f1f2081634f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#77 0x00007f1f2124f3ae in ?? () from /usr/lib64/libQtGui.so.4
#78 0x00007f1f207ea532 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#79 0x00007f1f207ea77c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#80 0x00007f1f207eec3b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#81 0x000000000040a088 in main (argc=3, argv=0x7fff01c0d578) at /home/panzi/software/amarok/src/main.cpp:291


The Function where the error occurs (modules/stream_out/smem.c):

static int SendAudio( sout_stream_t *p_stream, sout_stream_id_t *id,
                      block_t *p_buffer )
{
    sout_stream_sys_t *p_sys = p_stream->p_sys;
    int i_size;
    uint8_t* p_pcm_buffer;
    int i_samples = 0;

    i_size = p_buffer->i_buffer;
    i_samples = i_size / ( ( id->format->audio.i_bitspersample / 8 ) * id->format->audio.i_channels ); // *** the crash happens here ***
    /* Calling the prerender callback to get user buffer */
    p_sys->pf_audio_prerender_callback( id->p_data, &p_pcm_buffer, i_size );
    /* Copying data into user buffer */
    vlc_memcpy( p_pcm_buffer, p_buffer->p_buffer, i_size );
    /* Calling the postrender callback to tell the user his buffer is ready */
    p_sys->pf_audio_postrender_callback( id->p_data, p_pcm_buffer,
                                         id->format->audio.i_channels, id->format->audio.i_rate, i_samples,
                                         id->format->audio.i_bitspersample, i_size, p_buffer->i_pts );
    block_ChainRelease( p_buffer );
    return VLC_SUCCESS;
}


Reproducible: Always

Steps to Reproduce:
Play a FLAC file with Amarok.

Actual Results:  
Crash (FPE).

Expected Results:  
Music.
Comment 1 Myriam Schweingruber 2012-02-23 06:34:40 UTC

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