diff --git a/src/workerd/io/worker.c++ b/src/workerd/io/worker.c++ index 2de15705961..a4404941114 100644 --- a/src/workerd/io/worker.c++ +++ b/src/workerd/io/worker.c++ @@ -1583,7 +1583,8 @@ bool Worker::Isolate::Impl::Lock::checkInWithLimitEnforcer(Worker::Isolate& isol } kj::Maybe> Worker::Isolate::getCpuLimitNearlyExceededCallback() const { - KJ_IF_SOME(cb, *cpuLimitNearlyExceededCallback.lockExclusive()) { + auto lock = cpuLimitNearlyExceededCallback.lockExclusive(); + KJ_IF_SOME(cb, *lock) { return cb.reference(); } return kj::none; diff --git a/src/workerd/jsg/compile-cache.c++ b/src/workerd/jsg/compile-cache.c++ index b6b9be5c797..256dc416db2 100644 --- a/src/workerd/jsg/compile-cache.c++ +++ b/src/workerd/jsg/compile-cache.c++ @@ -20,7 +20,8 @@ void CompileCache::add( } kj::Maybe CompileCache::find(kj::StringPtr key) const { - KJ_IF_SOME(value, cache.lockExclusive()->find(key)) { + auto lock = cache.lockExclusive(); + KJ_IF_SOME(value, lock->find(key)) { if (value.data != nullptr) { return value; }