diff --git a/solar/src/storage/indexes.rs b/solar/src/storage/indexes.rs index 92feec0..31f2f63 100644 --- a/solar/src/storage/indexes.rs +++ b/solar/src/storage/indexes.rs @@ -464,9 +464,13 @@ impl Indexes { /// Return all indexed self-assigned image references for the given public /// key. - pub fn get_self_assigned_images(&self, ssb_id: &str) -> Result> { - let mut images = self.get_images(ssb_id)?; - images.retain(|(author, _image)| author == ssb_id); + pub fn get_self_assigned_images(&self, ssb_id: &str) -> Result> { + let images = self + .get_images(ssb_id)? + .into_iter() + .filter(|(author, _image)| author == ssb_id) + .map(|(_ssb_id, image)| image) + .collect(); Ok(images) } @@ -482,7 +486,7 @@ impl Indexes { /// Return the most recently indexed self-assigned image reference for the /// given public key. - pub fn get_latest_self_assigned_image(&self, ssb_id: &str) -> Result> { + pub fn get_latest_self_assigned_image(&self, ssb_id: &str) -> Result> { let images = self.get_self_assigned_images(ssb_id)?; let image = images.last().cloned();