forked from qt-creator/qt-creator
Clang: Do not work on unspecified values in ProjectParts::remove
Change-Id: Icc322bc64988cbc1b5ec4e6d6474b1b6b956c667 Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
This commit is contained in:
@@ -46,11 +46,16 @@ void ProjectParts::remove(const Utf8StringVector &projectPartIds)
|
||||
{
|
||||
Utf8StringVector processedProjectPartFilePaths = projectPartIds;
|
||||
|
||||
auto removeBeginIterator = std::remove_if(projects_.begin(), projects_.end(), [&processedProjectPartFilePaths] (const ProjectPart &project) {
|
||||
return processedProjectPartFilePaths.removeFast(project.projectPartId());
|
||||
});
|
||||
const auto removeBeginIterator = std::remove_if(projects_.begin(), projects_.end(),
|
||||
[&processedProjectPartFilePaths] (ProjectPart &project) {
|
||||
const bool isRemoved = processedProjectPartFilePaths.removeFast(project.projectPartId());
|
||||
|
||||
if (isRemoved)
|
||||
project.clearProjectPartId();
|
||||
|
||||
return isRemoved;
|
||||
});
|
||||
|
||||
std::for_each(removeBeginIterator, projects_.end(), [](ProjectPart &project) { project.clearProjectPartId(); });
|
||||
projects_.erase(removeBeginIterator, projects_.end());
|
||||
|
||||
if (!processedProjectPartFilePaths.isEmpty())
|
||||
|
||||
Reference in New Issue
Block a user