From d9827f3daaae097db7d6791c2631fb60146dba29 Mon Sep 17 00:00:00 2001 From: Jason Volk Date: Sun, 14 Jun 2020 03:00:31 -0700 Subject: [PATCH] ircd::db::database::env: Branch for exception first in result loop. --- ircd/db_env.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ircd/db_env.cc b/ircd/db_env.cc index b98803240..18a52a082 100644 --- a/ircd/db_env.cc +++ b/ircd/db_env.cc @@ -3391,13 +3391,16 @@ noexcept try for(size_t i(0); i < num; ++i) try { - assert(op[i].ret <= size(buf[i])); - const const_buffer read(buf[i], op[i].ret); - req[i].result = slice(read); - if(op[i].eptr) std::rethrow_exception(op[i].eptr); + assert(op[i].ret <= size(buf[i])); + const const_buffer read + { + buf[i], op[i].ret + }; + + req[i].result = slice(read); req[i].status = Status::OK(); } catch(const std::exception &e)