aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-03-21 21:35:27 +0100
committereldritch horrors <pennae@lix.systems>2024-03-31 00:30:43 +0000
commit0b6d3534741640419fa8489172d22e673fc018d7 (patch)
treee0d079509da5ef543d4282a35f86c93d333bbe29 /src
parent862f20a4ba4a917e3442db2963e7f75bd7f567bf (diff)
libutil: remove Pool::Handle::bad
it was used incorrectly (not swapped on handle move), only used in one place (that is now handled with exception handling detection in Handle itself), and if ever reintroduced should be replaced with a different, more understandable mechanism (like an explicit dropAsInvalid method). Change-Id: Ie3e5d5cfa81d335429cb2ee5c3ad85c74a9df17b
Diffstat (limited to 'src')
-rw-r--r--src/libstore/remote-store.cc1
-rw-r--r--src/libutil/pool.hh5
2 files changed, 1 insertions, 5 deletions
diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc
index 20c1c50f2..3188d9330 100644
--- a/src/libstore/remote-store.cc
+++ b/src/libstore/remote-store.cc
@@ -155,7 +155,6 @@ void RemoteStore::setOptions(Connection & conn)
RemoteStore::ConnectionHandle::~ConnectionHandle()
{
if (!daemonException && std::uncaught_exceptions()) {
- handle.markBad();
debug("closing daemon connection because of an exception");
}
}
diff --git a/src/libutil/pool.hh b/src/libutil/pool.hh
index b7a749e3a..2f6d30130 100644
--- a/src/libutil/pool.hh
+++ b/src/libutil/pool.hh
@@ -103,7 +103,6 @@ public:
private:
Pool & pool;
std::shared_ptr<R> r;
- bool bad = false;
friend Pool;
@@ -119,7 +118,7 @@ public:
if (!r) return;
{
auto state_(pool.state.lock());
- if (!bad && !std::uncaught_exceptions())
+ if (!std::uncaught_exceptions())
state_->idle.push_back(ref<R>(r));
assert(state_->inUse);
state_->inUse--;
@@ -129,8 +128,6 @@ public:
R * operator -> () { return &*r; }
R & operator * () { return *r; }
-
- void markBad() { bad = true; }
};
Handle get()