diff options
Diffstat (limited to 'src/plugins/Input')
| -rw-r--r-- | src/plugins/Input/flac/decoder_flac.cpp | 2 | ||||
| -rw-r--r-- | src/plugins/Input/flac/flacmetadatamodel.cpp | 6 | ||||
| -rw-r--r-- | src/plugins/Input/opus/opusmetadatamodel.cpp | 10 |
3 files changed, 11 insertions, 7 deletions
diff --git a/src/plugins/Input/flac/decoder_flac.cpp b/src/plugins/Input/flac/decoder_flac.cpp index 723a147ab..e2f274b12 100644 --- a/src/plugins/Input/flac/decoder_flac.cpp +++ b/src/plugins/Input/flac/decoder_flac.cpp @@ -268,7 +268,7 @@ bool DecoderFLAC::initialize() QString p = m_path; p.remove("flac://"); p.remove(QRegExp("#\\d+$")); - TagLib::FLAC::File fileRef(p.toLocal8Bit().constData()); + TagLib::FLAC::File fileRef(QStringToFileName(p)); //looking for cuesheet comment TagLib::Ogg::XiphComment *xiph_comment = fileRef.xiphComment(); diff --git a/src/plugins/Input/flac/flacmetadatamodel.cpp b/src/plugins/Input/flac/flacmetadatamodel.cpp index 82a033b44..a53ab2c9d 100644 --- a/src/plugins/Input/flac/flacmetadatamodel.cpp +++ b/src/plugins/Input/flac/flacmetadatamodel.cpp @@ -60,13 +60,13 @@ QHash<QString, QString> FLACMetaDataModel::audioProperties() qint64 size = 0; if(m_path.endsWith(".flac", Qt::CaseInsensitive)) { - flacFile = new TagLib::FLAC::File(m_path.toLocal8Bit().constData()); + flacFile = new TagLib::FLAC::File(QStringToFileName(m_path)); taglib_ap = flacFile->audioProperties(); size = flacFile->length(); } else if(m_path.endsWith(".oga", Qt::CaseInsensitive)) { - oggFlacFile = new TagLib::Ogg::FLAC::File(m_path.toLocal8Bit().constData()); + oggFlacFile = new TagLib::Ogg::FLAC::File(QStringToFileName(m_path)); taglib_ap = oggFlacFile->audioProperties(); size = oggFlacFile->length(); } @@ -132,7 +132,7 @@ VorbisCommentModel::VorbisCommentModel(const QString &path) : TagModel(TagModel: } else if (path.endsWith(".oga")) { - m_ogg_file = new TagLib::Ogg::FLAC::File(path.toLocal8Bit().constData()); + m_ogg_file = new TagLib::Ogg::FLAC::File(QStringToFileName(path)); m_tag = m_ogg_file->tag(); } } diff --git a/src/plugins/Input/opus/opusmetadatamodel.cpp b/src/plugins/Input/opus/opusmetadatamodel.cpp index 3e742d1a8..9e1f82a12 100644 --- a/src/plugins/Input/opus/opusmetadatamodel.cpp +++ b/src/plugins/Input/opus/opusmetadatamodel.cpp @@ -43,7 +43,7 @@ OpusMetaDataModel::~OpusMetaDataModel() QHash<QString, QString> OpusMetaDataModel::audioProperties() { QHash<QString, QString> ap; - TagLib::Ogg::Opus::File f (m_path.toLocal8Bit().constData()); + TagLib::Ogg::Opus::File f (QStringToFileName(m_path)); if(f.audioProperties()) { QString text = QString("%1").arg(f.audioProperties()->length()/60); @@ -64,7 +64,7 @@ QList<TagModel* > OpusMetaDataModel::tags() QPixmap OpusMetaDataModel::cover() { - TagLib::Ogg::Opus::File file(m_path.toLocal8Bit().constData()); + TagLib::Ogg::Opus::File file(QStringToFileName(m_path)); TagLib::Ogg::XiphComment *tag = file.tag(); if(!tag) return QPixmap(); @@ -212,8 +212,12 @@ void VorbisCommentModel::save() if(m_tag) m_file->save(); //taglib bug workarround +#ifdef Q_OS_WIN + QString path = QString::fromStdWString(m_file->name().wstr()); +#else QString path = QString::fromLocal8Bit(m_file->name()); +#endif delete m_file; - m_file = new TagLib::Ogg::Opus::File(path.toLocal8Bit().constData()); + m_file = new TagLib::Ogg::Opus::File(QStringToFileName(path)); m_tag = m_file->tag(); } |
