soundKonverter crashes reproducably right after converting specific files, or when trying to open the otions dialog for such a file shown in the queue. Most files convert fine, but some show the problem, and if so, it happens every time. It seems that if a file triggers the problem, all files of an album show the problem. Reproducible: Always Steps to Reproduce: 1. start soundKonverter 2. drag file into window, and click OK button 3. either start transcoding, or try to open the options menu Actual Results: Crash! Application: soundKonverter (soundkonverter), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [KCrash Handler] #6 0x00007ff021301731 in TagLib::String::toCString (this=0x15b3d28, unicode=true) at /var/portage/tmpfs/portage/media-libs/taglib-1.7.1/work/taglib-1.7.1/taglib/toolkit/tstring.cpp:257 #7 0x000000000042db97 in TagEngine::readCovers (this=<optimized out>, fileName=...) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/metadata/tagengine.cpp:682 #8 0x0000000000468b08 in Convert::writeTags (this=0x11f9820, item=0x1573dc0) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/convert.cpp:454 #9 0x000000000046a410 in Convert::remove (this=0x11f9820, item=0x1573dc0, state=0) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/convert.cpp:1097 #10 0x000000000046d0ba in Convert::executeNextStep (this=0x11f9820, item=0x1573dc0) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/convert.cpp:538 #11 0x000000000046d30b in Convert::pluginProcessFinished (this=0x11f9820, id=1, exitCode=0) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/convert.cpp:819 #12 0x0000000000421469 in Convert::qt_static_metacall (_o=0x11f9820, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0_build/moc_convert.cpp:89 #13 0x00007ff01f21eda2 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4 #14 0x00007ff0209c06ff in BackendPlugin::jobFinished (this=<optimized out>, _t1=1, _t2=0) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0_build/moc_backendplugin.cpp:181 #15 0x00007ff0209c4fdd in BackendPlugin::processExit (this=0x10d85a0, exitCode=0, exitStatus=<optimized out>) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/core/backendplugin.cpp:505 #16 0x00007ff0209c0885 in BackendPlugin::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0_build/moc_backendplugin.cpp:125 #17 0x00007ff01f21eda2 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4 #18 0x00007ff01f19e17f in QProcess::finished(int, QProcess::ExitStatus) () from /usr/lib64/qt4/libQtCore.so.4 #19 0x00007ff01f1a4eb7 in ?? () from /usr/lib64/qt4/libQtCore.so.4 #20 0x00007ff01f1a4f5e in ?? () from /usr/lib64/qt4/libQtCore.so.4 #21 0x00007ff01f21eda2 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/qt4/libQtCore.so.4 #22 0x00007ff01f26b2ae in QSocketNotifier::activated(int) () from /usr/lib64/qt4/libQtCore.so.4 #23 0x00007ff01f226a93 in QSocketNotifier::event(QEvent*) () from /usr/lib64/qt4/libQtCore.so.4 #24 0x00007ff01fc4005c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #25 0x00007ff01fc44cfd in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/qt4/libQtGui.so.4 #26 0x00007ff0221e4bc8 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5 #27 0x00007ff01f20950b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/qt4/libQtCore.so.4 #28 0x00007ff01f237f57 in ?? () from /usr/lib64/qt4/libQtCore.so.4 #29 0x00007ff01b09a75a in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0 #30 0x00007ff01b09aab8 in ?? () from /usr/lib64/libglib-2.0.so.0 #31 0x00007ff01b09ab6c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #32 0x00007ff01f2385d6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #33 0x00007ff01fce7d26 in ?? () from /usr/lib64/qt4/libQtGui.so.4 #34 0x00007ff01f2084b2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #35 0x00007ff01f2087a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4 #36 0x00007ff01f20cf7b in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4 #37 0x0000000000450dda in main (argc=1, argv=0x7fff5d8fd478) at /var/portage/tmpfs/portage/media-sound/soundkonverter-1.4.0/work/soundkonverter-1.4.0/main.cpp:55
Created attachment 70830 [details] Test case This is the first 50K of a file that triggers the problem, so you can try yourself to reproduce.
If you're getting a crash in toCString, it's most likely a bug on your end (dangling pointer or similar) since that code path is really well traversed. You might try hitting it with valgrind. The 'tagreader' example program from the taglib sources works fine on the file given, so we'll need a simple test case that doesn't involve the soundKonverter source code to work with to be able to proceed on this one.
Okay, thanks. It seems to be a problem of soundKonverter indeed, and it does no longer happen since I upgraded from 1.4.0. to 1.5.0. Closing.
Argh, not true. soundKonverter does not crash with the small test case I provided (I'm pretty sure it did before), but with a longer one. Anyway, I'll mail the author of soundKonverter directly.