From d8fabf6dddddecadf04184e1e2ed2c34fd3da60a Mon Sep 17 00:00:00 2001 From: David Caseria Date: Tue, 28 May 2024 09:22:22 -0400 Subject: [PATCH] fix: potential keyset lock race condition (#146) --- crates/cdk/src/mint.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crates/cdk/src/mint.rs b/crates/cdk/src/mint.rs index 945d29fd..7ae85cd6 100644 --- a/crates/cdk/src/mint.rs +++ b/crates/cdk/src/mint.rs @@ -763,14 +763,15 @@ impl Mint { if keysets.contains_key(id) { return Ok(()); } + drop(keysets); - let mut keysets = self.keysets.write().await; let keyset_info = self .localstore .get_keyset_info(id) .await? .ok_or(Error::UnknownKeySet)?; let id = keyset_info.id; + let mut keysets = self.keysets.write().await; keysets.insert(id, self.generate_keyset(keyset_info)); Ok(()) }