|

楼主 |
发表于 2004-10-3 12:58:40
|
显示全部楼层
[PHP]# diff -uN metabundle.cpp.orig metabundle.cpp
--- metabundle.cpp.orig 2004-09-27 01:16:33.000000000 +0800
+++ metabundle.cpp 2004-10-03 12:57:16.000000000 +0800
@@ -148,13 +148,13 @@
if( readAudioProperties || !CollectionDB().getMetaBundleForUrl( m_url.path(), this ) )
{
TagLib::FileRef f( QFile::encodeName( m_url.path() ), readAudioProperties, TagLib::AudioProperties::Fast );
-
+KMimeType: tr result = KMimeType::findByURL(m_url, 0, true, true);
if( !f.isNull() )
{
if( f.tag() )
{
TagLib::Tag *tag = f.tag();
-
+if ( result->name() != "audio/x-mp3") {
m_title = TStringToQString( tag->title() ).stripWhiteSpace();
m_artist = TStringToQString( tag->artist() ).stripWhiteSpace();
m_album = TStringToQString( tag->album() ).stripWhiteSpace();
@@ -162,6 +162,17 @@
m_genre = TStringToQString( tag->genre() ).stripWhiteSpace();
m_year = tag->year() ? QString::number( tag->year() ) : QString::null;
m_track = tag->track() ? QString::number( tag->track() ) : QString::null;
+}
+else {
+ m_title = KStringHandler::from8Bit( TStringToQString(tag->title()).latin1()).stripWhiteSpace();
+ m_artist = KStringHandler::from8Bit( TStringToQString(tag->artist()).latin1()).stripWhiteSpace();
+ m_album = KStringHandler::from8Bit( TStringToQString(tag->album()).latin1()).stripWhiteSpace();
+ m_year = tag->year() ? QString::number( tag->year() ) : QString::null;
+ m_comment = KStringHandler::from8Bit( TStringToQString(tag->comment()).latin1()).stripWhiteSpace();
+ m_genre = TStringToQString( tag->genre() ).stripWhiteSpace();
+ m_track = tag->track() ? QString::number( tag->track() ) : QString::null;
+}
+
}
init( f.audioProperties() ); //no need to test for the readAudioProperties bool
}
[/PHP]
居然不work... |
|