From 491caad6f62c21ffbcdebe662e63ec0f72e6f3a2 Mon Sep 17 00:00:00 2001 From: eldritch horrors Date: Thu, 21 Mar 2024 23:08:02 +0100 Subject: [PATCH] libstore: using throwing finally in withFramedSink the duplication of exception handling was added without justification, so we can only assume that it was done like this because Finally could not throw exceptions safely. since this has now been rectified we will deduplicate this handler code again. Change-Id: I40721f3378c0fd9f34e2914a16d383f6e2713b40 --- src/libstore/remote-store.cc | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc index 3188d9330..2373bbdc7 100644 --- a/src/libstore/remote-store.cc +++ b/src/libstore/remote-store.cc @@ -1067,27 +1067,15 @@ void RemoteStore::ConnectionHandle::withFramedSink(std::functionto, ex); - fun(sink); - sink.flush(); - } - - stderrThread.join(); - if (ex) - std::rethrow_exception(ex); + FramedSink sink((*this)->to, ex); + fun(sink); + sink.flush(); } }