[recent akode KDE_3_4_BRANCH] akodePlayObject_impl crash
Michael Buesch
mbuesch at freenet.de
Sun Mar 13 13:51:17 GMT 2005
Hi,
*** Please Cc me on replies, as I'm not subscribed to kde-multimedia.
*** Thanks.
I frequently get an artsd crash with amarok.
Three backtraces are attached to this email.
artsd is crashing in the akode plugin.
The backtraces say:
#8 0xb76302d8 in akodePlayObject_impl::unload (this=0xb6410d78)
at akodePlayObject_impl.cpp:228
Here's the code. Line 228 is marked.
void akodePlayObject_impl::unload()
{
arts_debug("akode: unload");
if (m_bytebuffer) m_bytebuffer->release();
delete decoder;
decoder = 0;
#ifndef AKODEARTS_SINGLETHREADED
delete streamDecoder; // <================= 228
delete frameDecoder;
delete audioBuffer;
streamDecoder = 0;
frameDecoder = 0;
audioBuffer = 0;
#endif
if (buffer != inBuffer)
delete inBuffer;
delete buffer;
inBuffer = buffer = 0;
buf_pos = 0;
delete resampler;
resampler = 0;
delete source;
source = 0;
#ifndef AKODEARTS_SINGLETHREADED
delete m_bytebuffer;
m_bytebuffer = 0;
#endif
}
I don't see, why this crashes, because I don't know the
code. But can it be related to the deletion order
of "decoder", "streamDecoder", "frameDecoder", "audioBuffer".
Is some race possible here?
--
Regards Michael Buesch [ http://www.tuxsoft.de.vu ]
-------------- next part --------------
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1216723280 (LWP 3242)]
[KCrash handler]
#7 0x00000011 in ?? ()
#8 0xb76302d8 in akodePlayObject_impl::unload (this=0xb6c3d780)
at akodePlayObject_impl.cpp:228
#9 0xb7630af6 in ~akodePlayObject_impl (this=0xb6c3d780,
__vtt_parm=0xb6c2fc88) at akodePlayObject_impl.cpp:89
#10 0xb7635961 in ~akodeMPEGPlayObject_impl (this=0xb6c3d780)
at akodeMPEGPlayObject_impl.cpp:28
#11 0xb7c23656 in Arts::Object_base::_destroy (this=0xb6c3d7f0)
at object.cc:357
#12 0xb7c23974 in Arts::Object_skel::_release (this=0xb6c2dcb8)
at object.cc:599
#13 0xb7c1bf32 in Arts::Dispatcher::handle (this=0xbfffe160, conn=0x80e1c58,
buffer=0xb6c0d798, messageType=-1228735352) at dispatcher.cc:561
#14 0xb7bf70eb in Arts::Connection::receive (this=0x80e1c58,
newdata=0xb6c0d798 "\030", newlen=-1228885560) at connection.cc:168
#15 0xb7c2c596 in Arts::SocketConnection::notifyIO (this=0x80e1c58, _fd=9,
types=1) at socketconnection.cc:139
#16 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#17 0xb7c1fac4 in Arts::Dispatcher::waitForResult (this=0xbfffe160,
requestID=31, connection=0x80e1c58) at dispatcher.cc:462
#18 0xb7c23d27 in Arts::Object_stub::_lookupMethod (this=0xb6c3333c,
methodDef=@0xbfffda10) at object.cc:1291
#19 0xb7c25d3a in Arts::Object_stub::_lookupMethodFast (this=0xb6c3333c,
method=0xb7dbd2dc "method:0000000a73747265616d456e640000000005766f69640000000002", '0' <repeats 16 times>) at object.cc:1315
#20 0xb7d9269f in Arts::SynthModule_stub::streamEnd (this=0xb6c33338)
at artsflow.cc:197
#21 0xb763367c in Arts_InputStream::close (this=0xb6c33048) at kmedia2.h:1202
#22 0xb6d1fccd in ~MPEGDecoder (this=0xb6c0dda0) at mpeg_decoder.cpp:141
#23 0xb76302cb in akodePlayObject_impl::unload (this=0xb6c3d780)
at akodePlayObject_impl.cpp:229
#24 0xb76303a0 in akodePlayObject_impl::halt (this=0xb6c3d780)
at akodePlayObject_impl.cpp:218
#25 0xb76316fd in akodePlayObject_impl::readFrame (this=0xb6c3d780)
at akodePlayObject_impl.cpp:321
#26 0xb7631a95 in akodePlayObject_impl::calculateBlock (this=0xb6c3d780,
cnt=512) at akodePlayObject_impl.cpp:391
#27 0xb7e4cb2a in Arts::StdScheduleNode::gslProcess (module=0xb6c4bbf8,
n_values=3066092288) at gslschedule.cc:405
#28 0xb7ec0862 in master_process_locked_node (node=0xb6c4bbf8,
n_values=3066231944) at gslopmaster.c:497
#29 0xb7ec1cd9 in _engine_master_dispatch () at gslopmaster.c:539
#30 0xb7ebe72e in gsl_engine_dispatch () at gslengine.c:726
#31 0xb7e4f061 in Arts::StdScheduleNode::requireFlow (this=0xb6c0db00)
at gslschedule.cc:88
#32 0xb7e4bdd8 in Arts::Synth_PLAY_impl::needMore (this=0xb6c0db00)
at synth_play_impl.cc:277
#33 0xb7e55a4a in Arts::AudioSubSystem::handleIO (this=0x807aff0, type=2)
at audiosubsys.cc:455
#34 0xb7e7716b in Arts::AudioIOALSA::notifyIO (this=0x8076f38, fd=10, type=2)
at audioioalsa9.cc:475
#35 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#36 0xb7c213ce in Arts::StdIOManager::run (this=0x8075560) at iomanager.cc:357
#37 0xb7c191ab in Arts::Dispatcher::run (this=0xb6c0db00) at dispatcher.cc:955
#38 0x0806153f in main (argc=14, argv=0xbfffe2f4) at artsd.cc:360
-------------- next part --------------
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1216723280 (LWP 10792)]
[KCrash handler]
#7 0x00000011 in ?? ()
#8 0xb76302d8 in akodePlayObject_impl::unload (this=0xb60015d8)
at akodePlayObject_impl.cpp:228
#9 0xb7630af6 in ~akodePlayObject_impl (this=0xb60015d8,
__vtt_parm=0xb6009f28) at akodePlayObject_impl.cpp:89
#10 0xb7635961 in ~akodeMPEGPlayObject_impl (this=0xb60015d8)
at akodeMPEGPlayObject_impl.cpp:28
#11 0xb7c23656 in Arts::Object_base::_destroy (this=0xb6001648)
at object.cc:357
#12 0xb7c23974 in Arts::Object_skel::_release (this=0xb6001530)
at object.cc:599
#13 0xb7c1bf32 in Arts::Dispatcher::handle (this=0xbfffe260, conn=0x80d97a8,
buffer=0xb6011148, messageType=-1241473240) at dispatcher.cc:561
#14 0xb7bf70eb in Arts::Connection::receive (this=0x80d97a8,
newdata=0xb6011148 "\030", newlen=-1241362088) at connection.cc:168
#15 0xb7c2c596 in Arts::SocketConnection::notifyIO (this=0x80d97a8, _fd=9,
types=1) at socketconnection.cc:139
#16 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#17 0xb7c1fac4 in Arts::Dispatcher::waitForResult (this=0xbfffe260,
requestID=31, connection=0x80d97a8) at dispatcher.cc:462
#18 0xb7c23d27 in Arts::Object_stub::_lookupMethod (this=0xb6010e2c,
methodDef=@0xbfffdb10) at object.cc:1291
#19 0xb7c25d3a in Arts::Object_stub::_lookupMethodFast (this=0xb6010e2c,
method=0xb7dbd2dc "method:0000000a73747265616d456e640000000005766f69640000000002", '0' <repeats 16 times>) at object.cc:1315
#20 0xb7d9269f in Arts::SynthModule_stub::streamEnd (this=0xb6010e28)
at artsflow.cc:197
#21 0xb763367c in Arts_InputStream::close (this=0xb6000fc0) at kmedia2.h:1202
#22 0xb61e0ccd in ~MPEGDecoder (this=0xb6011050) at mpeg_decoder.cpp:141
#23 0xb76302cb in akodePlayObject_impl::unload (this=0xb60015d8)
at akodePlayObject_impl.cpp:229
#24 0xb76303a0 in akodePlayObject_impl::halt (this=0xb60015d8)
at akodePlayObject_impl.cpp:218
#25 0xb76316fd in akodePlayObject_impl::readFrame (this=0xb60015d8)
at akodePlayObject_impl.cpp:321
#26 0xb7631a95 in akodePlayObject_impl::calculateBlock (this=0xb60015d8,
cnt=512) at akodePlayObject_impl.cpp:391
#27 0xb7e4cb2a in Arts::StdScheduleNode::gslProcess (module=0x80f3b58,
n_values=3053460784) at gslschedule.cc:405
#28 0xb7ec0862 in master_process_locked_node (node=0x80f3b58,
n_values=3053494056) at gslopmaster.c:497
#29 0xb7ec1cd9 in _engine_master_dispatch () at gslopmaster.c:539
#30 0xb7ebe72e in gsl_engine_dispatch () at gslengine.c:726
#31 0xb7e4f061 in Arts::StdScheduleNode::requireFlow (this=0xb6001d30)
at gslschedule.cc:88
#32 0xb7e4bdd8 in Arts::Synth_PLAY_impl::needMore (this=0xb6001d30)
at synth_play_impl.cc:277
#33 0xb7e55a4a in Arts::AudioSubSystem::handleIO (this=0x807aff0, type=2)
at audiosubsys.cc:455
#34 0xb7e7716b in Arts::AudioIOALSA::notifyIO (this=0x8076f38, fd=10, type=2)
at audioioalsa9.cc:475
#35 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#36 0xb7c213ce in Arts::StdIOManager::run (this=0x8075560) at iomanager.cc:357
#37 0xb7c191ab in Arts::Dispatcher::run (this=0xb6001d30) at dispatcher.cc:955
#38 0x0806153f in main (argc=14, argv=0xbfffe3f4) at artsd.cc:360
-------------- next part --------------
Using host libthread_db library "/lib/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1216723280 (LWP 3238)]
[New Thread -1218757712 (LWP 4135)]
[Thread debugging using libthread_db enabled]
[New Thread -1216723280 (LWP 3238)]
[New Thread -1218757712 (LWP 4135)]
[Thread debugging using libthread_db enabled]
[New Thread -1216723280 (LWP 3238)]
[New Thread -1218757712 (LWP 4135)]
[KCrash handler]
#7 0x00000011 in ?? ()
#8 0xb76302d8 in akodePlayObject_impl::unload (this=0xb6410d78)
at akodePlayObject_impl.cpp:228
#9 0xb7630af6 in ~akodePlayObject_impl (this=0xb6410d78,
__vtt_parm=0xb6495bb0) at akodePlayObject_impl.cpp:89
#10 0xb7635961 in ~akodeMPEGPlayObject_impl (this=0xb6410d78)
at akodeMPEGPlayObject_impl.cpp:28
#11 0xb7c23656 in Arts::Object_base::_destroy (this=0xb6410de8)
at object.cc:357
#12 0xb7c23974 in Arts::Object_skel::_release (this=0xb640f790)
at object.cc:599
#13 0xb7c1bf32 in Arts::Dispatcher::handle (this=0xbfffe360, conn=0x80e1c58,
buffer=0xb6470450, messageType=-1236706384) at dispatcher.cc:561
#14 0xb7bf70eb in Arts::Connection::receive (this=0x80e1c58,
newdata=0xb6470450 "\030", newlen=-1236844184) at connection.cc:168
#15 0xb7c2c596 in Arts::SocketConnection::notifyIO (this=0x80e1c58, _fd=9,
types=1) at socketconnection.cc:139
#16 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#17 0xb7c1fac4 in Arts::Dispatcher::waitForResult (this=0xbfffe360,
requestID=31, connection=0x80e1c58) at dispatcher.cc:462
#18 0xb7c23d27 in Arts::Object_stub::_lookupMethod (this=0xb642a0fc,
methodDef=@0xbfffdc10) at object.cc:1291
#19 0xb7c25d3a in Arts::Object_stub::_lookupMethodFast (this=0xb642a0fc,
method=0xb7dbd2dc "method:0000000a73747265616d456e640000000005766f69640000000002", '0' <repeats 16 times>) at object.cc:1315
#20 0xb7d9269f in Arts::SynthModule_stub::streamEnd (this=0xb642a0f8)
at artsflow.cc:197
#21 0xb763367c in Arts_InputStream::close (this=0xb64883d0) at kmedia2.h:1202
#22 0xb65afccd in ~MPEGDecoder (this=0xb6429b40) at mpeg_decoder.cpp:141
#23 0xb76302cb in akodePlayObject_impl::unload (this=0xb6410d78)
at akodePlayObject_impl.cpp:229
#24 0xb76303a0 in akodePlayObject_impl::halt (this=0xb6410d78)
at akodePlayObject_impl.cpp:218
#25 0xb76316fd in akodePlayObject_impl::readFrame (this=0xb6410d78)
at akodePlayObject_impl.cpp:321
#26 0xb7631a95 in akodePlayObject_impl::calculateBlock (this=0xb6410d78,
cnt=512) at akodePlayObject_impl.cpp:391
#27 0xb7e4cb2a in Arts::StdScheduleNode::gslProcess (module=0x80f2988,
n_values=3057819608) at gslschedule.cc:405
#28 0xb7ec0862 in master_process_locked_node (node=0x80f2988,
n_values=3058260912) at gslopmaster.c:497
#29 0xb7ec1cd9 in _engine_master_dispatch () at gslopmaster.c:539
#30 0xb7ebe72e in gsl_engine_dispatch () at gslengine.c:726
#31 0xb7e4f061 in Arts::StdScheduleNode::requireFlow (this=0xb6429fd8)
at gslschedule.cc:88
#32 0xb7e4bdd8 in Arts::Synth_PLAY_impl::needMore (this=0xb6429fd8)
at synth_play_impl.cc:277
#33 0xb7e55a4a in Arts::AudioSubSystem::handleIO (this=0x807aff0, type=2)
at audiosubsys.cc:455
#34 0xb7e7716b in Arts::AudioIOALSA::notifyIO (this=0x8076f38, fd=10, type=2)
at audioioalsa9.cc:475
#35 0xb7c22a42 in Arts::StdIOManager::processOneEvent (this=0x8075560,
blocking=true) at iomanager.cc:308
#36 0xb7c213ce in Arts::StdIOManager::run (this=0x8075560) at iomanager.cc:357
#37 0xb7c191ab in Arts::Dispatcher::run (this=0xb6429fd8) at dispatcher.cc:955
#38 0x0806153f in main (argc=14, argv=0xbfffe4f4) at artsd.cc:360
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-multimedia/attachments/20050313/615456d5/attachment.sig>
-------------- next part --------------
_______________________________________________
kde-multimedia mailing list
kde-multimedia at kde.org
https://mail.kde.org/mailman/listinfo/kde-multimedia
More information about the kde-multimedia
mailing list