Review Request 111626: Fix Amarok crash with Audio CD inserted

Christoph Feck christoph at maxiom.de
Fri Aug 16 12:54:45 UTC 2013



> On Aug. 12, 2013, 4:48 p.m., Àlex Fiestas wrote:
> > Code looks good.
> > 
> > Can you please "forward" this patch to Dolphin's fork of the KPlacesView? I'm sure they need this patch as well.
> > 
> > Thanks !

You are right, the code is identical there.

https://git.reviewboard.kde.org/r/112117/


- Christoph


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/111626/#review37598
-----------------------------------------------------------


On Aug. 16, 2013, 12:34 p.m., Christoph Feck wrote:
> 
> -----------------------------------------------------------
> 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.)
> 
> 
> 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/amarok-devel/attachments/20130816/9bf07d9c/attachment.html>


More information about the Amarok-devel mailing list