diff options
| author | tv <tv@krebsco.de> | 2026-11-07 22:35:09 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-07 22:35:09 +0100 |
| commit | 13cba9b0be736433d8ac44c0ef046cb001918a07 (patch) | |
| tree | 09272f50d6d27cab6200a33fcdc7abb9e552e46c /src/remake/snapshot.rs | |
| parent | ec70060ae5fa665953741da921e28031b56bc5e0 (diff) | |
store: keys_at tells no map from an empty one
registry::exists counted any value at _continuum/users as a registry;
keys_at answers None where there is no map, and its users (records,
members, forget records, remakes) say what they make of it.
Auth plan M1 (fix).
Diffstat (limited to 'src/remake/snapshot.rs')
| -rw-r--r-- | src/remake/snapshot.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/remake/snapshot.rs b/src/remake/snapshot.rs index 157a28d..220989e 100644 --- a/src/remake/snapshot.rs +++ b/src/remake/snapshot.rs @@ -231,6 +231,7 @@ pub(crate) fn verify_document(doc: &Document, epoch: Epoch) -> Result<EpochMetad pub(crate) fn epoch_of(doc: &Document) -> Result<Epoch, String> { let generation = store::keys_at(doc, &meta::path(&[EPOCHS])) .map_err(|error| error.to_string())? + .unwrap_or_default() .iter() .filter_map(|key| key.parse::<u64>().ok()) .max(); @@ -295,7 +296,7 @@ pub(crate) fn build( Ok(()) | Err(StoreError::NotFound) => {} Err(error) => return Err(error.into()), } - let mut protocol_keys = store::keys_at(&base, &meta::path(&[]))?; + let mut protocol_keys = store::keys_at(&base, &meta::path(&[]))?.unwrap_or_default(); protocol_keys.sort(); for key in protocol_keys .into_iter() |
