summaryrefslogtreecommitdiff
path: root/modules/codec/c++
diff options
context:
space:
mode:
authorClaudius 'keldu' Holeksa <mail@keldu.de>2024-09-17 18:07:04 +0200
committerClaudius 'keldu' Holeksa <mail@keldu.de>2024-09-17 18:07:04 +0200
commit90acc8c3d29a7f3309aef212ae1548494aec494a (patch)
treef51db26b7cf7487208e374a6cd7d7b6cd542d5f7 /modules/codec/c++
parentc64b9df7aceb41f5c61f46f8205a3c50ef3aef4c (diff)
wip
Diffstat (limited to 'modules/codec/c++')
-rw-r--r--modules/codec/c++/data_raw.hpp12
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();