diff --git a/src/ox/preloader/sizecatcher.hpp b/src/ox/preloader/sizecatcher.hpp index 2b57338bc..077d6871c 100644 --- a/src/ox/preloader/sizecatcher.hpp +++ b/src/ox/preloader/sizecatcher.hpp @@ -87,8 +87,11 @@ constexpr ox::Error SizeCatcher::field(const char*, const T **val, std template constexpr void SizeCatcher::pad(const auto *val) noexcept { - const auto padding = m_size - m_size % alignOf(*val); - m_size += padding; + const auto a = alignOf(*val); + const auto excess = m_size % a; + if (excess) { + m_size += a - excess; + } } template