From 93e0bbb4f0c3ae83a2700881f244b9d80fbf952b Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Mon, 25 Apr 2016 18:57:01 +0000 Subject: fixed QString to TagLib::FileName conversion (#852) git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@6266 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Input/vorbis/vorbismetadatamodel.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/plugins/Input/vorbis/vorbismetadatamodel.cpp') diff --git a/src/plugins/Input/vorbis/vorbismetadatamodel.cpp b/src/plugins/Input/vorbis/vorbismetadatamodel.cpp index 108addbd5..9dcc17557 100644 --- a/src/plugins/Input/vorbis/vorbismetadatamodel.cpp +++ b/src/plugins/Input/vorbis/vorbismetadatamodel.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2009-2015 by Ilya Kotov * + * Copyright (C) 2009-2016 by Ilya Kotov * * forkotov02@hotmail.ru * * * * This program is free software; you can redistribute it and/or modify * @@ -43,7 +43,7 @@ VorbisMetaDataModel::~VorbisMetaDataModel() QHash VorbisMetaDataModel::audioProperties() { QHash ap; - TagLib::Ogg::Vorbis::File f (m_path.toLocal8Bit().constData()); + TagLib::Ogg::Vorbis::File f (QStringToFileName(m_path)); if(f.audioProperties()) { QString text = QString("%1").arg(f.audioProperties()->length()/60); @@ -64,7 +64,7 @@ QList VorbisMetaDataModel::tags() QPixmap VorbisMetaDataModel::cover() { - TagLib::Ogg::Vorbis::File file(m_path.toLocal8Bit().constData()); + TagLib::Ogg::Vorbis::File file(QStringToFileName(m_path)); TagLib::Ogg::XiphComment *tag = file.tag(); if(!tag) return QPixmap(); @@ -111,7 +111,7 @@ ulong VorbisMetaDataModel::readPictureBlockField(QByteArray data, int offset) VorbisCommentModel::VorbisCommentModel(const QString &path) : TagModel(TagModel::Save) { - m_file = new TagLib::Ogg::Vorbis::File (path.toLocal8Bit().constData()); + m_file = new TagLib::Ogg::Vorbis::File (QStringToFileName(path)); m_tag = m_file->tag(); } @@ -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::Vorbis::File(path.toLocal8Bit().constData()); + m_file = new TagLib::Ogg::Vorbis::File(QStringToFileName(path)); m_tag = m_file->tag(); } -- cgit v1.2.3-13-gbd6f