Fix bug with set_processes_cache

This commit is contained in:
Sosthene 2024-10-12 22:35:55 +02:00
parent cae49617d5
commit 8ca4023d21

View File

@ -405,11 +405,17 @@ pub fn dump_process_cache() -> ApiResult<String> {
#[wasm_bindgen]
pub fn set_process_cache(processes: String) -> ApiResult<()> {
let processes: HashMap<OutPoint, Process> = serde_json::from_str(&processes)?;
let processes: Map<String, Value> = serde_json::from_str(&processes)?;
let parsed_processes: anyhow::Result<HashMap<OutPoint, Process>> = processes.into_iter()
.map(|(key, value)| {
Ok((OutPoint::from_str(&key)?, serde_json::from_value(value)?))
})
.collect();
let mut cached_processes = lock_processes()?;
*cached_processes = processes;
*cached_processes = parsed_processes?;
Ok(())
}