diff options
author | Claudius 'keldu' Holeksa <mail@keldu.de> | 2024-09-17 18:07:04 +0200 |
---|---|---|
committer | Claudius 'keldu' Holeksa <mail@keldu.de> | 2024-09-17 18:07:04 +0200 |
commit | 90acc8c3d29a7f3309aef212ae1548494aec494a (patch) | |
tree | f51db26b7cf7487208e374a6cd7d7b6cd542d5f7 /modules/codec/c++/data_raw.hpp | |
parent | c64b9df7aceb41f5c61f46f8205a3c50ef3aef4c (diff) |
wip
Diffstat (limited to 'modules/codec/c++/data_raw.hpp')
-rw-r--r-- | modules/codec/c++/data_raw.hpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/modules/codec/c++/data_raw.hpp b/modules/codec/c++/data_raw.hpp index 92afc77..2236d05 100644 --- a/modules/codec/c++/data_raw.hpp +++ b/modules/codec/c++/data_raw.hpp @@ -140,7 +140,8 @@ public: SAW_FORBID_MOVE(data); constexpr void set(typename native_data_type<ReferencedSchema>::type val){ - value_() = val; + auto& v = value_(); + v = val; } constexpr typename native_data_type<ReferencedSchema>::type get() const { @@ -422,7 +423,6 @@ class data<schema::Array<T,Dim>, encode::NativeRaw> { s *= dims_[iter]; } - return s; } public: @@ -456,7 +456,7 @@ class data<schema::Array<T,Dim>, encode::NativeRaw> { // auto old_value = value_; // auto old_value_size = value_size_; value_size_ = get_full_size(); - value_ = new typename raw_native_array_type_helper<T>::Type (value_size_); + value_ = new typename raw_native_array_type_helper<T>::Type [value_size_]; } data(data<MetaSchema, encode::NativeRaw> init) @@ -465,12 +465,12 @@ class data<schema::Array<T,Dim>, encode::NativeRaw> { dims_[i] = init.at(i).get(); } value_size_ = get_full_size(); - value_ = new typename raw_native_array_type_helper<T>::Type (value_size_); + value_ = new typename raw_native_array_type_helper<T>::Type [value_size_]; } ~data(){ if(value_){ - delete value_; + delete[] value_; value_ = nullptr; value_size_ = 0u; } @@ -486,7 +486,7 @@ class data<schema::Array<T,Dim>, encode::NativeRaw> { template<std::integral... Dims> constexpr error_or<void> adopt(typename raw_native_array_type_helper<T>::Type* adoptee, Dims... adoptee_size){ if(value_ != nullptr){ - return make_error<err::invalid_state>("Can't adopt into existing state"); + return make_error<err::invalid_state>("Can't adopt into existing data"); } dims_ = {adoptee_size...}; value_size_ = get_full_size(); |