Procházet zdrojové kódy

bin/tau: use save/load tree

Dastan-glitch před 3 roky
rodič
revize
dd2be36ea4
1 změnil soubory, kde provedl 5 přidání a 1 odebrání
  1. 5 1
      bin/tau/taud/src/main.rs

+ 5 - 1
bin/tau/taud/src/main.rs

@@ -332,6 +332,8 @@ async fn realmain(settings: Args, executor: Arc<smol::Executor<'_>>) -> Result<(
     let view = Arc::new(Mutex::new(View::new(events_queue)));
     let model_clone = model.clone();
 
+    model.lock().await.load_tree(&datastore_path)?;
+
     ////////////////////
     // Buffers
     ////////////////////
@@ -371,7 +373,7 @@ async fn realmain(settings: Args, executor: Arc<smol::Executor<'_>>) -> Result<(
         .spawn(start_sync_loop(
             broadcast_rcv,
             view,
-            model_clone,
+            model_clone.clone(),
             seen_ids,
             workspaces.clone(),
             datastore_path.clone(),
@@ -399,6 +401,8 @@ async fn realmain(settings: Args, executor: Arc<smol::Executor<'_>>) -> Result<(
     signals_handler.wait_termination(signals_task).await?;
     info!("Caught termination signal, cleaning up and exiting...");
 
+    model_clone.lock().await.save_tree(&datastore_path)?;
+
     p2p.stop().await;
 
     Ok(())