aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/document/signatures.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/document/signatures.rs b/src/document/signatures.rs
index 27bbb9e..2f408d5 100644
--- a/src/document/signatures.rs
+++ b/src/document/signatures.rs
@@ -295,7 +295,7 @@ impl Signatures {
let kept = self
.order
.iter()
- .filter(|hash| doc.get_change_meta_by_hash(hash).is_some())
+ .filter(|hash| super::changes::holds(doc, hash))
.map(|hash| (*hash, self.by_change[hash]))
.collect();
Self {
@@ -353,7 +353,7 @@ impl Signatures {
pub(crate) fn offer(&mut self, doc: &Document, received: Vec<(ChangeHash, [u8; 64])>) -> usize {
let mut kept = 0;
for (hash, signature) in received {
- if doc.get_change_meta_by_hash(&hash).is_none() {
+ if !super::changes::holds(doc, &hash) {
self.pending.insert(hash, signature);
} else if self.vouch(doc, hash, &signature) {
self.insert(hash, signature);
@@ -363,7 +363,7 @@ impl Signatures {
let arrived: Vec<ChangeHash> = self
.pending
.keys()
- .filter(|hash| doc.get_change_meta_by_hash(hash).is_some())
+ .filter(|hash| super::changes::holds(doc, hash))
.copied()
.collect();
for hash in arrived {
@@ -455,7 +455,7 @@ impl Signatures {
/// sign one.
pub(crate) fn forks(&self, doc: &Document, change: &super::Change) -> bool {
self.latest.get(change.actor_id()).is_some_and(|latest| {
- latest.seq >= change.seq() && doc.get_change_meta_by_hash(&latest.hash).is_some()
+ latest.seq >= change.seq() && super::changes::holds(doc, &latest.hash)
})
}