| Summary: | Missing covers in Context Browser | ||
|---|---|---|---|
| Product: | [Applications] amarok | Reporter: | Curtis Walker <sultanoswing> |
| Component: | general | Assignee: | Amarok Bugs <amarok-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | abdi.malek, mschiff, slashdevdsp |
| Priority: | NOR | ||
| Version First Reported In: | 1.4.2 | ||
| Target Milestone: | --- | ||
| Platform: | Ubuntu | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed In: | ||
| Sentry Crash Report: | |||
|
Description
Curtis Walker
2006-08-29 11:29:03 UTC
Same problem here with read/write access to the album directories so I don't believe it is related to permissions. I am having the same issue, using Ubuntu 6.06LTS and building from 1.4.2 source with mysql support. The difference is that I use folder.jpg files in each album folder. 1.3.x and 1.4.1 had no issues displaying these covers. 1.4.2 is not displaying them. I also use folder.jpg in each album folder. Although I didn't specifically try compiling without mysql support, the problem exists, as I said above when using or not using mysql as the collection db. *** Bug 133055 has been marked as a duplicate of this bug. *** Hmm it's strange: I could reproduce the problem, but some other developers could not. We'll have to dig a bit deeper. I'll keep you informed.. Thanks Mark. Let me know if I can do anything for you. I'm no programmer, but I can do some tests if you need a guinea pig. I'm seeing this issue too. Does this post shed any light on the problem?: http://amarok.kde.org/forum/index.php/topic,12697.msg14073.html#msg14073 SVN commit 580049 by mkossick:
folder album images were not displayed when Amarok was not able to identify the device they
are stored on. Thanks to iain_benson for tracking down this bug.
BUG: 133174
M +1 -0 ChangeLog
M +6 -22 src/collectiondb.cpp
M +7 -6 src/mountpointmanager.h
--- trunk/extragear/multimedia/amarok/ChangeLog #580048:580049
@@ -40,6 +40,7 @@
* Sort numeric columns in flat collection view numerically. (BR 130667)
* Dynamic Collection broke flat collection view when the Filename column
was added (BR 132874)
+ * Cover images were not displayed in some cases (BR 133174)
VERSION 1.4.2:
--- trunk/extragear/multimedia/amarok/src/collectiondb.cpp #580048:580049
@@ -446,12 +446,7 @@
foreach( result )
{
int id = (*it).toInt();
- if ( MountPointManager::instance()->isMounted( id ) )
- {
- //KURL relativePath = KURL::fromPathOrURL( *(++it) );
- values.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
- }
- else ++it;
+ values.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
}
return values;
}
@@ -467,10 +462,7 @@
const QString &rel = *it;
it++;
int id = (*it).toInt();
- if ( MountPointManager::instance()->isMounted( id ) )
- {
- urls += KURL::fromPathOrURL( MountPointManager::instance()->getAbsolutePath( id, rel ) );
- }
+ urls += KURL::fromPathOrURL( MountPointManager::instance()->getAbsolutePath( id, rel ) );
for( int i = 0;
i < QueryBuilder::dragFieldCount-1 && it != values.end();
i++ )
@@ -1510,7 +1502,8 @@
.arg( discNumber ) );
else
rs = query( QString( "SELECT tags.deviceid, tags.url FROM tags, year WHERE tags.album = %1 AND "
- "tags.artist = %2 AND year.id = tags.year AND tags.discnumber = %3 ORDER BY tags.track;" )
+ "tags.artist = %2 AND year.id = tags.year AND tags.discnumber = %3 "
+ + deviceidSelection() + " ORDER BY tags.track;" )
.arg( album_id )
.arg( artist_id )
.arg( discNumber ) );
@@ -1518,11 +1511,7 @@
foreach( rs )
{
int id = (*it).toInt();
- if ( MountPointManager::instance()->isMounted( id ) )
- {
- result.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
- }
- else ++it;
+ result.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
//PostGreSql requires a third column
if ( getDbConnectionType() == DbConnection::postgresql ) ++it;
}
@@ -1540,12 +1529,7 @@
foreach( rs )
{
int id = (*it).toInt();
- if ( MountPointManager::instance()->isMounted( id ) )
- {
- //KURL relativePath = KURL::fromPathOrURL( *(++it) );
- result.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
- }
- else ++it;
+ result.append( ( MountPointManager::instance()->getAbsolutePath( id, *(++it) ) ) );
}
return result;
}
--- trunk/extragear/multimedia/amarok/src/mountpointmanager.h #580048:580049
@@ -163,12 +163,6 @@
int getIdForUrl( KURL url );
int getIdForUrl( QString url );
/**
- * checks whether a medium identified by its unique database id is currently mounted.
- * @param deviceId the mediums unique id
- * @return true if the medium is mounted, false otherwise
- */
- bool isMounted ( const int deviceId ) const;
- /**
*
* @param id
* @return
@@ -220,6 +214,13 @@
~MountPointManager();
+ /**
+ * checks whether a medium identified by its unique database id is currently mounted.
+ * Note: does not handle deviceId = -1! It only checks real devices
+ * @param deviceId the mediums unique id
+ * @return true if the medium is mounted, false otherwise
+ */
+ bool isMounted ( const int deviceId ) const;
void init();
void handleMissingMediaManager();
/**
*** Bug 133465 has been marked as a duplicate of this bug. *** Bug is indeed fixed now on my machine, using the SVN (build as of Sept. 3rd). Many thanks! |