diff --git a/src/playlistparsers/cueparser.cpp b/src/playlistparsers/cueparser.cpp index 48ab1ba2f..f13b3a59d 100644 --- a/src/playlistparsers/cueparser.cpp +++ b/src/playlistparsers/cueparser.cpp @@ -30,6 +30,9 @@ #include #include #include +#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) +# include +#endif #include "core/logging.h" #include "utilities/timeconstants.h" @@ -63,6 +66,13 @@ SongList CueParser::Load(QIODevice *device, const QString &playlist_path, const QTextStream text_stream(device); +#if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) + const std::optional encoding = QStringConverter::encodingForData(device->peek(1024)); + if (encoding.has_value()) { + text_stream.setEncoding(encoding.value()); + } +#endif + QString dir_path = dir.absolutePath(); // read the first line already QString line = text_stream.readLine();