diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp index f1b21a4de6d1fd5dfaab71f086b1c4f1ea329f12..1f7e646fe1d91c8568898817b50dc6e3826fcbe4 100644 --- a/src/plugins/cvs/cvsplugin.cpp +++ b/src/plugins/cvs/cvsplugin.cpp @@ -980,7 +980,8 @@ static inline QString msgExecutionLogEntry(const QString &workingDir, const QStr const QString args = arguments.join(QString(QLatin1Char(' '))); if (workingDir.isEmpty()) return CVSPlugin::tr("Executing: %1 %2\n").arg(executable, args); - return CVSPlugin::tr("Executing in %1: %2 %3\n").arg(workingDir, executable, args); + return CVSPlugin::tr("Executing in %1: %2 %3\n"). + arg(QDir::toNativeSeparators(workingDir), executable, args); } // Run CVS. At this point, file arguments must be relative to diff --git a/src/plugins/perforce/perforcechecker.cpp b/src/plugins/perforce/perforcechecker.cpp index 315c7311b49d9faa07d0d738d98383f3be12bfc3..ea48d9db00fa875214ff5343163e556fea98c07e 100644 --- a/src/plugins/perforce/perforcechecker.cpp +++ b/src/plugins/perforce/perforcechecker.cpp @@ -155,8 +155,9 @@ static inline QString clientRootFromOutput(const QString &in) QRegExp regExp(QLatin1String("(\\n|\\r\\n|\\r)Root:\\s*(.*)(\\n|\\r\\n|\\r)")); QTC_ASSERT(regExp.isValid(), return QString()); regExp.setMinimal(true); + // Normalize slashes and capitalization of Windows drive letters for caching. if (regExp.indexIn(in) != -1) - return regExp.cap(2).trimmed(); + return QFileInfo(regExp.cap(2).trimmed()).absoluteFilePath(); return QString(); } diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp index 36e60dcc93704ecc42ab08540563041270e1069d..a29483bd189843fe0701898aaaa19a6f148ea870 100644 --- a/src/plugins/subversion/subversionplugin.cpp +++ b/src/plugins/subversion/subversionplugin.cpp @@ -1030,7 +1030,8 @@ static inline QString msgExecutionLogEntry(const QString &workingDir, const QStr const QString argsS = SubversionSettings::formatArguments(arguments); if (workingDir.isEmpty()) return SubversionPlugin::tr("Executing: %1 %2\n").arg(executable, argsS); - return SubversionPlugin::tr("Executing in %1: %2 %3\n").arg(workingDir, executable, argsS); + return SubversionPlugin::tr("Executing in %1: %2 %3\n"). + arg(QDir::toNativeSeparators(workingDir), executable, argsS); } SubversionResponse SubversionPlugin::runSvn(const QString &workingDir, @@ -1252,7 +1253,7 @@ QString SubversionPlugin::findTopLevelForDirectoryI(const QString &directory) co return QString(); for (QDir parentDir = lastDirectory; parentDir.cdUp() ; lastDirectory = parentDir) { if (!managesDirectory(parentDir)) - return QDir::toNativeSeparators(lastDirectory.absolutePath()); + return lastDirectory.absolutePath(); } return QString(); }