forked from qt-creator/qt-creator
Perforce: Replace QSharedPointer with std::shared_ptr
According to https://wiki.qt.io/Things_To_Look_Out_For_In_Reviews QSharedPointer impl is poor and it's going to be removed from Qt 7. Change-Id: I6b48189134c741e6d8ab6bb0c94d27d4504c14b5 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -296,7 +296,7 @@ public:
|
|||||||
void changelists(const FilePath &workingDir, const QString &fileName = QString());
|
void changelists(const FilePath &workingDir, const QString &fileName = QString());
|
||||||
void cleanCommitMessageFile();
|
void cleanCommitMessageFile();
|
||||||
bool isCommitEditorOpen() const;
|
bool isCommitEditorOpen() const;
|
||||||
static QSharedPointer<TempFileSaver> createTemporaryArgumentFile(const QStringList &extraArgs,
|
static std::shared_ptr<TempFileSaver> createTemporaryArgumentFile(const QStringList &extraArgs,
|
||||||
QString *errorString);
|
QString *errorString);
|
||||||
|
|
||||||
QString pendingChangesData();
|
QString pendingChangesData();
|
||||||
@@ -1066,19 +1066,18 @@ bool PerforcePluginPrivate::vcsMove(const FilePath &workingDir, const QString &f
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Write extra args to temporary file
|
// Write extra args to temporary file
|
||||||
QSharedPointer<TempFileSaver>
|
std::shared_ptr<TempFileSaver> PerforcePluginPrivate::createTemporaryArgumentFile(
|
||||||
PerforcePluginPrivate::createTemporaryArgumentFile(const QStringList &extraArgs,
|
const QStringList &extraArgs, QString *errorString)
|
||||||
QString *errorString)
|
|
||||||
{
|
{
|
||||||
if (extraArgs.isEmpty())
|
if (extraArgs.isEmpty())
|
||||||
return QSharedPointer<TempFileSaver>();
|
return std::shared_ptr<TempFileSaver>();
|
||||||
// create pattern
|
// create pattern
|
||||||
QString pattern = dd->m_tempFilePattern;
|
QString pattern = dd->m_tempFilePattern;
|
||||||
if (pattern.isEmpty()) {
|
if (pattern.isEmpty()) {
|
||||||
pattern = TemporaryDirectory::masterDirectoryPath() + "/qtc_p4_XXXXXX.args";
|
pattern = TemporaryDirectory::masterDirectoryPath() + "/qtc_p4_XXXXXX.args";
|
||||||
dd->m_tempFilePattern = pattern;
|
dd->m_tempFilePattern = pattern;
|
||||||
}
|
}
|
||||||
QSharedPointer<TempFileSaver> rc(new TempFileSaver(pattern));
|
std::shared_ptr<TempFileSaver> rc(new TempFileSaver(pattern));
|
||||||
rc->setAutoRemove(true);
|
rc->setAutoRemove(true);
|
||||||
const int last = extraArgs.size() - 1;
|
const int last = extraArgs.size() - 1;
|
||||||
for (int i = 0; i <= last; i++) {
|
for (int i = 0; i <= last; i++) {
|
||||||
@@ -1087,7 +1086,7 @@ PerforcePluginPrivate::createTemporaryArgumentFile(const QStringList &extraArgs,
|
|||||||
rc->write("\n", 1);
|
rc->write("\n", 1);
|
||||||
}
|
}
|
||||||
if (!rc->finalize(errorString))
|
if (!rc->finalize(errorString))
|
||||||
return QSharedPointer<TempFileSaver>();
|
return std::shared_ptr<TempFileSaver>();
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1237,8 +1236,8 @@ PerforceResponse PerforcePluginPrivate::runP4Cmd(const FilePath &workingDir,
|
|||||||
}
|
}
|
||||||
QStringList actualArgs = settings().commonP4Arguments(workingDir.toString());
|
QStringList actualArgs = settings().commonP4Arguments(workingDir.toString());
|
||||||
QString errorMessage;
|
QString errorMessage;
|
||||||
QSharedPointer<TempFileSaver> tempFile = createTemporaryArgumentFile(extraArgs, &errorMessage);
|
std::shared_ptr<TempFileSaver> tempFile = createTemporaryArgumentFile(extraArgs, &errorMessage);
|
||||||
if (!tempFile.isNull())
|
if (tempFile)
|
||||||
actualArgs << QLatin1String("-x") << tempFile->filePath().toString();
|
actualArgs << QLatin1String("-x") << tempFile->filePath().toString();
|
||||||
else if (!errorMessage.isEmpty())
|
else if (!errorMessage.isEmpty())
|
||||||
return {};
|
return {};
|
||||||
|
Reference in New Issue
Block a user