diff --git a/src/clientget.cpp b/src/clientget.cpp index 682ff78..d037974 100644 --- a/src/clientget.cpp +++ b/src/clientget.cpp @@ -172,8 +172,8 @@ struct GPROp : public OperationBase { decltype (done) junk; decltype (onInit) junkI; - bool ret; - loop.call([this, &junk, &junkI, &ret](){ + bool ret = false; + (void)loop.tryCall([this, &junk, &junkI, &ret](){ ret = _cancel(false); junk = std::move(done); junkI = std::move(onInit); diff --git a/src/clientintrospect.cpp b/src/clientintrospect.cpp index ae2e48b..9f713a8 100644 --- a/src/clientintrospect.cpp +++ b/src/clientintrospect.cpp @@ -43,7 +43,7 @@ struct InfoOp : public OperationBase virtual bool cancel() override final { decltype (done) junk; bool ret = false; - loop.call([this, &junk, &ret](){ + (void)loop.tryCall([this, &junk, &ret](){ ret = _cancel(false); junk = std::move(done); // leave opByIOID for GC diff --git a/src/clientmon.cpp b/src/clientmon.cpp index f4e82bb..b76ce6b 100644 --- a/src/clientmon.cpp +++ b/src/clientmon.cpp @@ -187,8 +187,8 @@ struct SubscriptionImpl : public OperationBase, public Subscription virtual bool cancel() override final { decltype (event) junk; - bool ret; - loop.call([this, &junk, &ret](){ + bool ret = false; + (void)loop.tryCall([this, &junk, &ret](){ ret = _cancel(false); junk = std::move(event); // leave opByIOID for GC