diff --git a/src/cargo/util/cache_lock.rs b/src/cargo/util/cache_lock.rs index 7d019d183e6..afd06c998b8 100644 --- a/src/cargo/util/cache_lock.rs +++ b/src/cargo/util/cache_lock.rs @@ -408,7 +408,10 @@ impl CacheState { .lock_exclusive(gctx, DOWNLOAD_EXCLUSIVE_DESCR, blocking) { Ok(LockAcquired) => {} - Ok(WouldBlock) => return Ok(WouldBlock), + Ok(WouldBlock) => { + self.mutate_lock.decrement(); + return Ok(WouldBlock); + } Err(e) => { self.mutate_lock.decrement(); return Err(e);