Преглед на файлове

fix: potential keyset lock race condition (#146)

David Caseria преди 9 месеца
родител
ревизия
d8fabf6ddd
променени са 1 файла, в които са добавени 2 реда и са изтрити 1 реда
  1. 2 1
      crates/cdk/src/mint.rs

+ 2 - 1
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(())
     }