Review Request 111626: Fix Amarok crash with Audio CD inserted
Commit Hook
null at kde.org
Fri Aug 16 13:34:52 BST 2013
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/111626/
-----------------------------------------------------------
(Updated Aug. 16, 2013, 12:34 p.m.)
Status
------
This change has been marked as submitted.
Review request for Amarok, kdelibs and Solid.
Description
-------
https://bugs.kde.org/show_bug.cgi?id=314544#c40 says:
"Looking at the backtrace, KFilePlacesItem tries to detect Audio CDs as follows:
Solid::Device d = device();
if (d.isValid()) {
if (m_access) {
return QUrl(KUrl(m_access->filePath()));
} else if (m_disc && (m_disc->availableContent() & Solid::OpticalDisc::Audio)!=0) {
QString device = d.as<Solid::Block>()->device();
return QUrl(QString("audiocd:/?device=%1").arg(device));
}
}
The crash happens, because d.as<Solid::Block> returns 0, in other words, Audio CDs are no longer treated as block devices.
Failure of said cast can be easily detected, but the question is rather, if it's not a Solid bug, how the code needs to be modified to correctly get the audiocd:/ URL for the block device."
While I did not yet figure out, how I can get the block device URL for a disc in case block is 0, I propose this temporary fix. It should fix the crash, but could fail to correctly invoke the audiocd:/ kio with multiple disc drives.
This addresses bug 314544.
http://bugs.kde.org/show_bug.cgi?id=314544
Diffs
-----
kfile/kfileplacesitem.cpp 5a12486
Diff: http://git.reviewboard.kde.org/r/111626/diff/
Testing
-------
I could not test, my system has no disc drives.
Thanks,
Christoph Feck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20130816/111f02f9/attachment.htm>
More information about the kde-core-devel
mailing list