QFileInfo: checkAttribute should take lambdas by value
So that they are moved. Pick-to: 6.6 6.5 Change-Id: I3d1767944200962be90d3eb8695c92a766c4c744 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 08cb919aa5b4fcd950e9f3a6e41c00c01f0632ab) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
22d1a437cb
commit
e86f223eba
@ -1685,7 +1685,8 @@ QDateTime QFileInfo::fileTime(QFile::FileTime time, const QTimeZone &tz) const
|
|||||||
|
|
||||||
auto fsLambda = [d, time]() { return d->metaData.fileTime(time); };
|
auto fsLambda = [d, time]() { return d->metaData.fileTime(time); };
|
||||||
auto engineLambda = [d, time]() { return d->getFileTime(time); };
|
auto engineLambda = [d, time]() { return d->getFileTime(time); };
|
||||||
const QDateTime dt = d->checkAttribute<QDateTime>(flag, fsLambda, engineLambda);
|
const auto dt =
|
||||||
|
d->checkAttribute<QDateTime>(flag, std::move(fsLambda), std::move(engineLambda));
|
||||||
return dt.toTimeZone(tz);
|
return dt.toTimeZone(tz);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -146,8 +146,8 @@ public:
|
|||||||
{ if (cache_enabled) cachedFlags |= c; }
|
{ if (cache_enabled) cachedFlags |= c; }
|
||||||
|
|
||||||
template <typename Ret, typename FSLambda, typename EngineLambda>
|
template <typename Ret, typename FSLambda, typename EngineLambda>
|
||||||
Ret checkAttribute(Ret defaultValue, QFileSystemMetaData::MetaDataFlags fsFlags, const FSLambda &fsLambda,
|
Ret checkAttribute(Ret defaultValue, QFileSystemMetaData::MetaDataFlags fsFlags,
|
||||||
const EngineLambda &engineLambda) const
|
FSLambda fsLambda, EngineLambda engineLambda) const
|
||||||
{
|
{
|
||||||
if (isDefaultConstructed)
|
if (isDefaultConstructed)
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
@ -161,10 +161,10 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <typename Ret, typename FSLambda, typename EngineLambda>
|
template <typename Ret, typename FSLambda, typename EngineLambda>
|
||||||
Ret checkAttribute(QFileSystemMetaData::MetaDataFlags fsFlags, const FSLambda &fsLambda,
|
Ret checkAttribute(QFileSystemMetaData::MetaDataFlags fsFlags, FSLambda fsLambda,
|
||||||
const EngineLambda &engineLambda) const
|
EngineLambda engineLambda) const
|
||||||
{
|
{
|
||||||
return checkAttribute(Ret(), fsFlags, fsLambda, engineLambda);
|
return checkAttribute(Ret(), std::move(fsFlags), std::move(fsLambda), engineLambda);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user