Summary:
[Folly] Use fewer keep-alives in `VirtualEventBase::keepAliveRelease`.
{
D5982132} mistakenly used `VirtualEventBase::add`, which holds a keep-alive on the master `EventBase`, instead of calling `EventBase::add` directly.
(Note: this ignores all push blocking failures!)
Reviewed By: andriigrynenko
Differential Revision:
D5992403
fbshipit-source-id:
f427025c06f01e6a93d6eae8a051c3553f58be20
}
void keepAliveRelease() override {
- if (!inRunningEventBaseThread()) {
- return add([=] { keepAliveRelease(); });
+ if (!evb_.inRunningEventBaseThread()) {
+ return evb_.add([=] { keepAliveRelease(); });
}
if (loopKeepAliveCountAtomic_.load()) {
loopKeepAliveCount_ += loopKeepAliveCountAtomic_.exchange(0);