aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-10-19 16:17:58 +0200
committereldritch horrors <pennae@lix.systems>2024-10-19 19:47:46 +0000
commit0ff8f9132552e03497b07e1e5c068660a7a04515 (patch)
tree833442cb876655fe151b0e46060e2a83edd483ee
parentb0e619b8bd68944de9a721b0b1bfd045dcb77146 (diff)
libutil: disallow AsyncCollect relocations
some promises capture `this`. we could also allocate a shared state, but this thing doesn't really need to ever be moved anyway. so there. Change-Id: I50b5c44684a8ab4e984b1323de21f97ace4a864a
-rw-r--r--src/libutil/async-collect.hh3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libutil/async-collect.hh b/src/libutil/async-collect.hh
index 9e0b8bad9..1c65ac8d6 100644
--- a/src/libutil/async-collect.hh
+++ b/src/libutil/async-collect.hh
@@ -63,6 +63,9 @@ public:
{
}
+ // oneDone promises capture `this`
+ KJ_DISALLOW_COPY_AND_MOVE(AsyncCollect);
+
kj::Promise<std::optional<Item>> next()
{
if (remaining == 0 && results.empty()) {