mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-01-27 03:35:27 +00:00
Merge branch 'prevent_wrong_use_of_write' into 'master'
Disallow to call ESMWriter::writeT with pointer type See merge request OpenMW/openmw!1609
This commit is contained in:
commit
e18393d7d6
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
#include <iosfwd>
|
#include <iosfwd>
|
||||||
#include <list>
|
#include <list>
|
||||||
|
#include <type_traits>
|
||||||
|
|
||||||
#include "components/esm/esmcommon.hpp"
|
#include "components/esm/esmcommon.hpp"
|
||||||
#include "loadtes3.hpp"
|
#include "loadtes3.hpp"
|
||||||
@ -111,6 +112,7 @@ class ESMWriter
|
|||||||
template<typename T>
|
template<typename T>
|
||||||
void writeT(const T& data)
|
void writeT(const T& data)
|
||||||
{
|
{
|
||||||
|
static_assert(!std::is_pointer_v<T>);
|
||||||
write((char*)&data, sizeof(T));
|
write((char*)&data, sizeof(T));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -123,6 +125,7 @@ class ESMWriter
|
|||||||
template<typename T>
|
template<typename T>
|
||||||
void writeT(const T& data, size_t size)
|
void writeT(const T& data, size_t size)
|
||||||
{
|
{
|
||||||
|
static_assert(!std::is_pointer_v<T>);
|
||||||
write((char*)&data, size);
|
write((char*)&data, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user