forked from qt-creator/qt-creator
Docker: Use mapToDevicePath() in startContainer()
Change-Id: Iad91144413a176bee036e03192713f5bf4695dcb Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -833,14 +833,7 @@ void DockerDevicePrivate::startContainer()
|
|||||||
for (QString mount : qAsConst(m_data.mounts)) {
|
for (QString mount : qAsConst(m_data.mounts)) {
|
||||||
if (mount.isEmpty())
|
if (mount.isEmpty())
|
||||||
continue;
|
continue;
|
||||||
// make sure to convert windows style paths to unix style paths with the file system case:
|
mount = q->mapToDevicePath(FilePath::fromUserInput(mount));
|
||||||
// C:/dev/src -> /c/dev/src
|
|
||||||
if (const FilePath mountPath = FilePath::fromUserInput(mount).normalizedPathName();
|
|
||||||
mountPath.startsWithDriveLetter()) {
|
|
||||||
const QChar lowerDriveLetter = mountPath.path().at(0).toLower();
|
|
||||||
const FilePath path = FilePath::fromUserInput(mountPath.path().mid(2)); // strip C:
|
|
||||||
mount = '/' + lowerDriveLetter + path.path();
|
|
||||||
}
|
|
||||||
dockerCreate.addArgs({"-v", mount + ':' + mount});
|
dockerCreate.addArgs({"-v", mount + ':' + mount});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1071,6 +1064,8 @@ FilePath DockerDevice::mapToGlobalPath(const FilePath &pathOnDevice) const
|
|||||||
|
|
||||||
QString DockerDevice::mapToDevicePath(const Utils::FilePath &globalPath) const
|
QString DockerDevice::mapToDevicePath(const Utils::FilePath &globalPath) const
|
||||||
{
|
{
|
||||||
|
// make sure to convert windows style paths to unix style paths with the file system case:
|
||||||
|
// C:/dev/src -> /c/dev/src
|
||||||
const FilePath normalized = globalPath.normalizedPathName();
|
const FilePath normalized = globalPath.normalizedPathName();
|
||||||
QString path = normalized.path();
|
QString path = normalized.path();
|
||||||
if (normalized.startsWithDriveLetter()) {
|
if (normalized.startsWithDriveLetter()) {
|
||||||
|
Reference in New Issue
Block a user