Properly ignore missing/empty runnables config

This commit is contained in:
Kirill Bulatov 2024-02-20 15:02:35 +02:00
parent 48a6fb9e84
commit c54d6aff6c

View file

@ -79,8 +79,10 @@ impl<T: for<'a> Deserialize<'a> + PartialEq + 'static> TrackedFile<T> {
) -> Model<Self> { ) -> Model<Self> {
cx.new_model(move |cx| { cx.new_model(move |cx| {
cx.spawn(|tracked_file, mut cx| async move { cx.spawn(|tracked_file, mut cx| async move {
while let Some(new_contents) = tracker.next().await.filter(|s| !s.is_empty()) { while let Some(new_contents) = tracker.next().await {
let Some(new_contents) = serde_json_lenient::from_str(&new_contents).log_err() if !new_contents.trim().is_empty() {
let Some(new_contents) =
serde_json_lenient::from_str(&new_contents).log_err()
else { else {
continue; continue;
}; };
@ -91,6 +93,7 @@ impl<T: for<'a> Deserialize<'a> + PartialEq + 'static> TrackedFile<T> {
}; };
})?; })?;
} }
}
anyhow::Ok(()) anyhow::Ok(())
}) })
.detach_and_log_err(cx); .detach_and_log_err(cx);