From 0c25d1f9c42e94efb5403a2652b62f145d2b24c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrius=20=C5=A0tikonas?= Date: Thu, 1 Oct 2020 23:51:59 +0100 Subject: [PATCH] Use QFile::decodeFileName for decoding device node names. BUG: 384321 --- src/core/partition.cpp | 5 +++-- src/fs/filesystem.cpp | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/core/partition.cpp b/src/core/partition.cpp index d1f02c6..87d308d 100644 --- a/src/core/partition.cpp +++ b/src/core/partition.cpp @@ -1,7 +1,7 @@ /* SPDX-FileCopyrightText: 2008-2010 Volker Lanz SPDX-FileCopyrightText: 2008 Laurent Montel - SPDX-FileCopyrightText: 2013-2018 Andrius Štikonas + SPDX-FileCopyrightText: 2013-2020 Andrius Štikonas SPDX-FileCopyrightText: 2015-2016 Teo Mrnjavac SPDX-FileCopyrightText: 2016 Chantara Tith @@ -19,6 +19,7 @@ #include "util/externalcommand.h" #include "util/report.h" +#include #include #include #include @@ -329,7 +330,7 @@ bool Partition::unmount(Report& report) const QString canonicalDeviceNode = QFileInfo(deviceNode()).canonicalFilePath(); const QList mountedVolumes = QStorageInfo::mountedVolumes(); for (const QStorageInfo &storage : mountedVolumes) { - if (QFileInfo(QString::fromLocal8Bit(storage.device())).canonicalFilePath() == canonicalDeviceNode ) { + if (QFileInfo(QFile::decodeName(storage.device())).canonicalFilePath() == canonicalDeviceNode ) { success = false; break; } diff --git a/src/fs/filesystem.cpp b/src/fs/filesystem.cpp index 86bd74b..e046fa5 100644 --- a/src/fs/filesystem.cpp +++ b/src/fs/filesystem.cpp @@ -1,6 +1,6 @@ /* SPDX-FileCopyrightText: 2008-2011 Volker Lanz - SPDX-FileCopyrightText: 2012-2019 Andrius Štikonas + SPDX-FileCopyrightText: 2012-2020 Andrius Štikonas SPDX-FileCopyrightText: 2015-2016 Teo Mrnjavac SPDX-FileCopyrightText: 2016 Chantara Tith SPDX-FileCopyrightText: 2017 Pali Rohár @@ -27,6 +27,7 @@ #include #include +#include #include #include #include @@ -154,7 +155,7 @@ QString FileSystem::detectMountPoint(FileSystem* fs, const QString& partitionPat QString partitionCanonicalPath = partitionPathFileInfo.canonicalFilePath(); const QList mountedVolumes = QStorageInfo::mountedVolumes(); for (const QStorageInfo &storage : mountedVolumes) { - if (partitionCanonicalPath == QFileInfo(QString::fromLocal8Bit(storage.device())).canonicalFilePath() ) { + if (partitionCanonicalPath == QFileInfo(QFile::decodeName(storage.device())).canonicalFilePath() ) { mountPoints.append(storage.rootPath()); } }