forked from alemi/upub
fix: batch load fills multiple identical objects
in case of an announce and a view, we get the attachments only once otherwise and frontend may overwrite cache with the empty one. this is wasteful because we clone everytime tho, TODO!
This commit is contained in:
parent
a901ae7656
commit
6f5b494a25
1 changed files with 4 additions and 2 deletions
|
@ -36,8 +36,10 @@ impl BatchFillable for Vec<RichActivity> {
|
||||||
}
|
}
|
||||||
for element in self.iter_mut() {
|
for element in self.iter_mut() {
|
||||||
if let Some(ref object) = element.object {
|
if let Some(ref object) = element.object {
|
||||||
if let Some(v) = map.remove(&object.internal) {
|
if let Some(v) = map.get(&object.internal) {
|
||||||
element.accept(v, tx).await?;
|
// TODO wasteful because we clone every time, but we cant do remove otherwise multiple
|
||||||
|
// identical objects wont get filled (for example, a post boosted twice)
|
||||||
|
element.accept(v.clone(), tx).await?;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue