From b68b9ccc0528a93ff93f6468ee976caf2f5fd69e Mon Sep 17 00:00:00 2001 From: Leonardo de Moura Date: Fri, 23 May 2014 11:24:00 -0700 Subject: [PATCH] fix(kernel/environment): bug in extension id checking Signed-off-by: Leonardo de Moura --- src/kernel/environment.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kernel/environment.cpp b/src/kernel/environment.cpp index f2f3b8be56..ea3952b10d 100644 --- a/src/kernel/environment.cpp +++ b/src/kernel/environment.cpp @@ -160,7 +160,7 @@ unsigned environment::register_extension(std::shared_ptr= get_extension_manager().has_ext(id)) + if (!get_extension_manager().has_ext(id)) throw_invalid_extension(*this); if (id >= m_extensions->size() || !(*m_extensions)[id]) return get_extension_manager().get_initial(id); @@ -168,7 +168,7 @@ environment_extension const & environment::get_extension(unsigned id) const { } environment environment::update(unsigned id, std::shared_ptr const & ext) const { - if (id >= get_extension_manager().has_ext(id)) + if (!get_extension_manager().has_ext(id)) throw_invalid_extension(*this); auto new_exts = std::make_shared(*m_extensions); if (id >= new_exts->size())