From 77405d8d7fe38106952fae18bd9f13016f7b98d4 Mon Sep 17 00:00:00 2001 From: Jan Eisenhauer <44572464+JanEisenhauer@users.noreply.github.com> Date: Mon, 29 Oct 2018 14:30:59 +0100 Subject: [PATCH] Collect at most as many frames as requested. --- include/boost/stacktrace/stacktrace.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/boost/stacktrace/stacktrace.hpp b/include/boost/stacktrace/stacktrace.hpp index fc2e7a9..63087cf 100644 --- a/include/boost/stacktrace/stacktrace.hpp +++ b/include/boost/stacktrace/stacktrace.hpp @@ -88,7 +88,7 @@ class basic_stacktrace { #endif std::vector buf(buffer_size * 2, 0, impl_.get_allocator()); do { - const std::size_t frames_count = boost::stacktrace::detail::this_thread_frames::collect(&buf[0], buf.size(), frames_to_skip + 1); + const std::size_t frames_count = boost::stacktrace::detail::this_thread_frames::collect(&buf[0], buf.size() < max_depth ? buf.size() : max_depth, frames_to_skip + 1); if (buf.size() > frames_count || frames_count >= max_depth) { const std::size_t size = (max_depth < frames_count ? max_depth : frames_count); fill(&buf[0], size);