forked from qt-creator/qt-creator
Revert "Perforce: Allow working with localhost server"
It breaks the common use-case.
Running p4 client -o in any directory returns Host,
even if it is not managed by Perforce.
This reverts commit 28f7c7935f
.
Fixes: QTCREATORBUG-22458
Change-Id: Iaa84ff68e2c6d807c6c177ff2113b07380b4e5be
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
@@ -175,6 +175,17 @@ static inline QString clientRootFromOutput(const QString &in)
|
|||||||
return QString();
|
return QString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// When p4 port and p4 user is set a preconfigured Root: is given, which doesn't relate with
|
||||||
|
// the current mapped project. In this case "Client:" has the same value as "Host:", which is an
|
||||||
|
// invalid case.
|
||||||
|
static inline bool clientAndHostAreEqual(const QString &in)
|
||||||
|
{
|
||||||
|
QString client = findTerm(in, QLatin1String("Client:"));
|
||||||
|
QString host = findTerm(in, QLatin1String("Host:"));
|
||||||
|
|
||||||
|
return client == host;
|
||||||
|
}
|
||||||
|
|
||||||
void PerforceChecker::parseOutput(const QString &response)
|
void PerforceChecker::parseOutput(const QString &response)
|
||||||
{
|
{
|
||||||
if (!response.contains(QLatin1String("View:")) && !response.contains(QLatin1String("//depot/"))) {
|
if (!response.contains(QLatin1String("View:")) && !response.contains(QLatin1String("//depot/"))) {
|
||||||
@@ -182,6 +193,12 @@ void PerforceChecker::parseOutput(const QString &response)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (clientAndHostAreEqual(response)) {
|
||||||
|
// Is an invalid case. But not an error. QtC checks cmake install directories for
|
||||||
|
// p4 repositories, or the %temp% directory.
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const QString repositoryRoot = clientRootFromOutput(response);
|
const QString repositoryRoot = clientRootFromOutput(response);
|
||||||
if (repositoryRoot.isEmpty()) {
|
if (repositoryRoot.isEmpty()) {
|
||||||
//: Unable to determine root of the p4 client installation
|
//: Unable to determine root of the p4 client installation
|
||||||
|
Reference in New Issue
Block a user