From de45dd2e80ac99ca15748246a24676a7fb629297 Mon Sep 17 00:00:00 2001 From: q66 Date: Sat, 11 Mar 2017 18:41:03 +0100 Subject: [PATCH] do stacksize clamp in ctor --- ostd/context_stack.hh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ostd/context_stack.hh b/ostd/context_stack.hh index af5eeb2..569a24a 100644 --- a/ostd/context_stack.hh +++ b/ostd/context_stack.hh @@ -67,13 +67,12 @@ struct basic_fixedsize_stack { using traits_type = TR; basic_fixedsize_stack(size_t ss = TR::default_size()) noexcept: - p_size(ss) + p_size(std::clamp(ss, TR::minimum_size(), TR::maximum_size())) {} stack_context allocate() { size_t ss = p_size; - ss = std::clamp(ss, TR::minimum_size(), TR::maximum_size()); size_t pgs = TR::page_size(); size_t npg = std::max(ss / pgs, size_t(size_t(Protected) + 1)); size_t asize = npg * pgs; @@ -129,12 +128,11 @@ struct basic_segmented_stack { using traits_type = TR; basic_segmented_stack(size_t ss = TR::default_size()) noexcept: - p_size(ss) + p_size(std::clamp(ss, TR::minimum_size(), TR::maximum_size())) {} stack_context allocate() { size_t ss = p_size; - ss = std::clamp(ss, TR::minimum_size(), TR::maximum_size()); stack_context ret; void *p = detail::__splitstack_makecontext(