diff --git a/src/lib/opaque-holder.hpp b/src/lib/opaque-holder.hpp index de2bcae7b..f91cf9265 100644 --- a/src/lib/opaque-holder.hpp +++ b/src/lib/opaque-holder.hpp @@ -628,12 +628,13 @@ namespace lib { destroy(); \ try \ { \ - return *new(&buf_) _CTOR_CALL_; \ - } \ - catch (...) \ - { \ - placeDefault(); \ - throw; \ + REQUIRE (siz >= sizeof(TY)); \ + return *new(&buf_) _CTOR_CALL_; \ + } \ + catch (...) \ + { \ + placeDefault(); \ + throw; \ }