diff options
| author | tv <tv@krebsco.de> | 2026-10-31 19:53:27 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-31 19:53:27 +0100 |
| commit | 6105507200231e67ba544c12aa10b988e1c23826 (patch) | |
| tree | 880530b7401cb5d43f52e06a68b4d704326aa272 /src/swarm/blob.rs | |
| parent | 8d7adfbdb7798cca9d9783761f290e3bd85d9a3a (diff) | |
use Automerge as Document instead of AutoCommit
This allows a lot of operations to drop mut.
Diffstat (limited to 'src/swarm/blob.rs')
| -rw-r--r-- | src/swarm/blob.rs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/swarm/blob.rs b/src/swarm/blob.rs index a136217..3f66d50 100644 --- a/src/swarm/blob.rs +++ b/src/swarm/blob.rs @@ -217,7 +217,7 @@ async fn prepare(state: &AppState, id: BlobId, delta: Option<DeltaSpec>) -> Opti let spec = delta.filter(|spec| spec.id() == delta_id)?; let doc = Arc::clone(&state.doc); tokio::task::spawn_blocking(move || { - changes::delta_bytes(&mut doc.blocking_write().doc, &spec.from, &spec.to) + changes::delta_bytes(&doc.blocking_read().doc, &spec.from, &spec.to) }) .await .ok() @@ -226,9 +226,8 @@ async fn prepare(state: &AppState, id: BlobId, delta: Option<DeltaSpec>) -> Opti } BlobId::Change(hash) => { let doc = Arc::clone(&state.doc); - // Looking a change up needs the document mutably. tokio::task::spawn_blocking(move || { - changes::change_bytes(&mut doc.blocking_write().doc, &hash) + changes::change_bytes(&doc.blocking_read().doc, &hash) }) .await .ok() |
