From fd71cbf1354c4a53882eda3f4422310a8373bcca Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 5 Jul 2021 13:39:18 +0200 Subject: [PATCH] Docker: Properly map back DockerDevice::directoryEntries() result Even though the file is accessible in the local path, not mapping back loses its relation do the docker container used for further decisions like FilePath::needsDevice(). Change-Id: I7c693d604364b9e42bf7310c072be0f33d149626 Reviewed-by: Christian Stenger --- src/plugins/docker/dockerdevice.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/plugins/docker/dockerdevice.cpp b/src/plugins/docker/dockerdevice.cpp index 26950d285fe..accf6895c11 100644 --- a/src/plugins/docker/dockerdevice.cpp +++ b/src/plugins/docker/dockerdevice.cpp @@ -1037,15 +1037,19 @@ FilePath DockerDevice::searchInPath(const FilePath &filePath) const return mapToGlobalPath(FilePath::fromString(output)); } -QList DockerDevice::directoryEntries(const FilePath &filePath, - const QStringList &nameFilters, - QDir::Filters filters, - QDir::SortFlags sort) const +FilePaths DockerDevice::directoryEntries(const FilePath &filePath, + const QStringList &nameFilters, + QDir::Filters filters, + QDir::SortFlags sort) const { QTC_ASSERT(handlesFile(filePath), return {}); tryCreateLocalFileAccess(); - if (hasLocalFileAccess()) - return mapToLocalAccess(filePath).dirEntries(nameFilters, filters, sort); + if (hasLocalFileAccess()) { + const FilePaths entries = mapToLocalAccess(filePath).dirEntries(nameFilters, filters, sort); + return Utils::transform(entries, [this](const FilePath &entry) { + return mapFromLocalAccess(entry); + }); + } QTC_CHECK(false); // FIXME: Implement return {};