From bede1ea1ec3d6d5cf6b24f4219c719a8d2a407e9 Mon Sep 17 00:00:00 2001 From: fredzio Date: Sun, 1 Aug 2021 13:13:47 +0200 Subject: [PATCH 1/4] Fix build --- apps/opencs/model/world/infocollection.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/opencs/model/world/infocollection.hpp b/apps/opencs/model/world/infocollection.hpp index 8974cbb8fb..c1dcbafb01 100644 --- a/apps/opencs/model/world/infocollection.hpp +++ b/apps/opencs/model/world/infocollection.hpp @@ -1,6 +1,8 @@ #ifndef CSM_WOLRD_INFOCOLLECTION_H #define CSM_WOLRD_INFOCOLLECTION_H +#include + #include "collection.hpp" #include "info.hpp" From 36e33b0cf20eb99b87e5a72c0c2278f0de36dd41 Mon Sep 17 00:00:00 2001 From: fredzio Date: Sun, 1 Aug 2021 13:14:05 +0200 Subject: [PATCH 2/4] Add missing override --- apps/opencs/model/world/infocollection.hpp | 10 +++++----- apps/opencs/model/world/record.hpp | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/apps/opencs/model/world/infocollection.hpp b/apps/opencs/model/world/infocollection.hpp index c1dcbafb01..3e8455c399 100644 --- a/apps/opencs/model/world/infocollection.hpp +++ b/apps/opencs/model/world/infocollection.hpp @@ -74,19 +74,19 @@ namespace CSMWorld void removeDialogueInfos(const std::string& dialogueId); - void removeRows (int index, int count); + void removeRows (int index, int count) override; void appendBlankRecord (const std::string& id, - UniversalId::Type type = UniversalId::Type_None); + UniversalId::Type type = UniversalId::Type_None) override; - int searchId (const std::string& id) const; + int searchId (const std::string& id) const override; void appendRecord (std::unique_ptr record, - UniversalId::Type type = UniversalId::Type_None); + UniversalId::Type type = UniversalId::Type_None) override; void insertRecord (std::unique_ptr record, int index, - UniversalId::Type type = UniversalId::Type_None); + UniversalId::Type type = UniversalId::Type_None) override; }; } diff --git a/apps/opencs/model/world/record.hpp b/apps/opencs/model/world/record.hpp index eb4a74c343..bb43612e5e 100644 --- a/apps/opencs/model/world/record.hpp +++ b/apps/opencs/model/world/record.hpp @@ -46,9 +46,9 @@ namespace CSMWorld Record(State state, const ESXRecordT *base = 0, const ESXRecordT *modified = 0); - std::unique_ptr clone() const; + std::unique_ptr clone() const override; - std::unique_ptr modifiedCopy() const; + std::unique_ptr modifiedCopy() const override; void assign (const RecordBase& record) override; From 9ba459662d509a070d0ca5fa1073b339be44e9bb Mon Sep 17 00:00:00 2001 From: fredzio Date: Sun, 1 Aug 2021 13:05:40 +0200 Subject: [PATCH 3/4] Remove unneeded std::move [19/199] Building CXX object apps/opencs/CMakeFiles/openmw-cs.dir/model/world/commands.cpp.o ../../../apps/opencs/model/world/commands.cpp:298:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move] mOld = std::move(model.getRecord (id).clone()); ^ ../../../apps/opencs/model/world/commands.cpp:298:12: note: remove std::move call here mOld = std::move(model.getRecord (id).clone()); ^~~~~~~~~~ ~ ../../../apps/opencs/model/world/commands.cpp:333:12: warning: moving a temporary object prevents copy elision [-Wpessimizing-move] mOld = std::move(model.getRecord (id).clone()); ^ ../../../apps/opencs/model/world/commands.cpp:333:12: note: remove std::move call here mOld = std::move(model.getRecord (id).clone()); ^~~~~~~~~~ ~ 2 warnings generated. --- apps/opencs/model/world/commands.cpp | 4 ++-- apps/opencs/model/world/refidcollection.cpp | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/apps/opencs/model/world/commands.cpp b/apps/opencs/model/world/commands.cpp index e69600eff4..7c5bafb52f 100644 --- a/apps/opencs/model/world/commands.cpp +++ b/apps/opencs/model/world/commands.cpp @@ -295,7 +295,7 @@ CSMWorld::RevertCommand::RevertCommand (IdTable& model, const std::string& id, Q { setText (("Revert record " + id).c_str()); - mOld = std::move(model.getRecord (id).clone()); + mOld = model.getRecord (id).clone(); } CSMWorld::RevertCommand::~RevertCommand() @@ -330,7 +330,7 @@ CSMWorld::DeleteCommand::DeleteCommand (IdTable& model, { setText (("Delete record " + id).c_str()); - mOld = std::move(model.getRecord (id).clone()); + mOld = model.getRecord (id).clone(); } CSMWorld::DeleteCommand::~DeleteCommand() diff --git a/apps/opencs/model/world/refidcollection.cpp b/apps/opencs/model/world/refidcollection.cpp index 7f3e71106c..03337106ae 100644 --- a/apps/opencs/model/world/refidcollection.cpp +++ b/apps/opencs/model/world/refidcollection.cpp @@ -805,8 +805,7 @@ void CSMWorld::RefIdCollection::cloneRecord(const std::string& origin, const std::string& destination, const CSMWorld::UniversalId::Type type) { - std::unique_ptr newRecord = - std::move(mData.getRecord(mData.searchId(origin)).modifiedCopy()); + std::unique_ptr newRecord = mData.getRecord(mData.searchId(origin)).modifiedCopy(); mAdapters.find(type)->second->setId(*newRecord, destination); mData.insertRecord(std::move(newRecord), type, destination); } From 139119415283a7f6c0d8b7431b1cdf2125311f5a Mon Sep 17 00:00:00 2001 From: fredzio Date: Sun, 1 Aug 2021 13:11:16 +0200 Subject: [PATCH 4/4] Remove unneeded return statement --- apps/opencs/model/world/refidcollection.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/apps/opencs/model/world/refidcollection.cpp b/apps/opencs/model/world/refidcollection.cpp index 03337106ae..4ee99a2702 100644 --- a/apps/opencs/model/world/refidcollection.cpp +++ b/apps/opencs/model/world/refidcollection.cpp @@ -764,7 +764,6 @@ void CSMWorld::RefIdCollection::setNestedData(int row, int column, const QVarian const CSMWorld::NestedRefIdAdapterBase& nestedAdapter = getNestedAdapter(mColumns.at(column), localIndex.second); nestedAdapter.setNestedData(&mColumns.at (column), mData, localIndex.first, data, subRow, subColumn); - return; } void CSMWorld::RefIdCollection::removeRows (int index, int count) @@ -778,7 +777,6 @@ void CSMWorld::RefIdCollection::removeNestedRows(int row, int column, int subRow const CSMWorld::NestedRefIdAdapterBase& nestedAdapter = getNestedAdapter(mColumns.at(column), localIndex.second); nestedAdapter.removeNestedRow(&mColumns.at (column), mData, localIndex.first, subRow); - return; } void CSMWorld::RefIdCollection::appendBlankRecord (const std::string& id, UniversalId::Type type) @@ -895,7 +893,6 @@ void CSMWorld::RefIdCollection::addNestedRow(int row, int col, int position) const CSMWorld::NestedRefIdAdapterBase& nestedAdapter = getNestedAdapter(mColumns.at(col), localIndex.second); nestedAdapter.addNestedRow(&mColumns.at(col), mData, localIndex.first, position); - return; } void CSMWorld::RefIdCollection::setNestedTable(int row, int column, const CSMWorld::NestedTableWrapperBase& nestedTable) @@ -904,7 +901,6 @@ void CSMWorld::RefIdCollection::setNestedTable(int row, int column, const CSMWor const CSMWorld::NestedRefIdAdapterBase& nestedAdapter = getNestedAdapter(mColumns.at(column), localIndex.second); nestedAdapter.setNestedTable(&mColumns.at(column), mData, localIndex.first, nestedTable); - return; } CSMWorld::NestedTableWrapperBase* CSMWorld::RefIdCollection::nestedTable(int row, int column) const