Merge branch 'fix_use_after_move' into 'master'

Fix use after move in InfoOrder::insertInfo

See merge request OpenMW/openmw!3296
This commit is contained in:
psi29a 2023-08-01 07:25:17 +00:00
commit 23671ced33
3 changed files with 45 additions and 12 deletions

View file

@ -89,6 +89,7 @@ file(GLOB UNITTEST_SRC_FILES
esm3/readerscache.cpp
esm3/testsaveload.cpp
esm3/testesmwriter.cpp
esm3/testinfoorder.cpp
nifosg/testnifloader.cpp
)

View file

@ -0,0 +1,27 @@
#include <components/esm3/infoorder.hpp>
#include <gtest/gtest.h>
namespace ESM
{
namespace
{
struct Value
{
RefId mId;
RefId mPrev;
Value() = default;
Value(const Value&) = delete;
Value(Value&&) = default;
Value& operator=(const Value&) = delete;
Value& operator=(Value&&) = default;
};
TEST(Esm3InfoOrderTest, insertInfoShouldNotCopyValue)
{
InfoOrder<Value> order;
order.insertInfo(Value{}, false);
}
}
}