diff -ru playwolf/wolflabel.cpp playwolf.patched/wolflabel.cpp --- playwolf/wolflabel.cpp 2009-02-18 22:12:57.000000000 +0100 +++ playwolf.patched/wolflabel.cpp 2009-04-11 12:27:41.000000000 +0200 @@ -33,7 +33,9 @@ #include #include +#include #include +#include #include @@ -80,13 +82,18 @@ void WolfLabel::setImage(const QString& path) { KUrl url(path); - QString tmpFile; - if( KIO::NetAccess::download(url, tmpFile, NULL)) { - image.load(tmpFile); - KIO::NetAccess::removeTempFile(tmpFile); + QString nocover = "file:///usr/share/apps/amarok/images/nocover.png"; + KTemporaryFile tmpFile; + if (tmpFile.open()) { + KIO::Job* copyJob = KIO::file_copy( url, KUrl( tmpFile.fileName() ), -1, KIO::Overwrite | KIO::HideProgressInfo ); + if (KIO::NetAccess::synchronousRun(copyJob, 0)) { + image.load( tmpFile.fileName() ); + } else { + image.load( nocover ); + } + } else { + image.load( nocover ); } - else - image.load("file:///usr/share/apps/amarok/images/nocover.png"); label->nativeWidget()->setPixmap(image.scaled(size().width(), size().height(), Qt::KeepAspectRatio, Qt::SmoothTransformation));