mirror of
https://github.com/storytold/lightcraft.git
synced 2026-11-02 06:27:53 -06:00
Synchronize Folder: no threads on the web (review fix)
scan_with ran the import scan beside the photo checks in a thread scope on every target; on wasm32 a thread can't be spawned and Scope::spawn panics, so Synchronize Folder… crashed the web build. There the two run one after the other, like the other file work in the engine. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
dd3f860300
commit
832d3c8d3d
@@ -137,6 +137,10 @@ impl SyncInput {
|
||||
/// library's photos, which run on several threads too. Stops early when `progress.cancel` is set.
|
||||
pub fn scan_with(input: SyncInput, progress: &ScanProgress) -> FolderChanges {
|
||||
let SyncInput { folder, revision, scan, photos, labels } = input;
|
||||
// (no threads on the web: one after the other there)
|
||||
#[cfg(target_arch = "wasm32")]
|
||||
let (out, checks) = (crate::import::scan_with(scan, std::slice::from_ref(&folder), progress), check_photos(&photos, &labels, progress));
|
||||
#[cfg(not(target_arch = "wasm32"))]
|
||||
let (out, checks) = std::thread::scope(|sc| {
|
||||
let photos = &photos;
|
||||
let labels = &labels;
|
||||
|
||||
Reference in New Issue
Block a user