diff --git a/libuavcan/include/uavcan/internal/marshal/array.hpp b/libuavcan/include/uavcan/internal/marshal/array.hpp index 5fdfd6bb53..497cfe15c4 100644 --- a/libuavcan/include/uavcan/internal/marshal/array.hpp +++ b/libuavcan/include/uavcan/internal/marshal/array.hpp @@ -122,7 +122,11 @@ private: BufferType data_; template - typename EnableIf::Type initialize(int) { std::fill(data_, data_ + MaxSize, U()); } + typename EnableIf::Type initialize(int) + { + if (ArrayMode != ArrayModeDynamic) + std::fill(data_, data_ + MaxSize, U()); + } template void initialize(...) { } public: