diff options
Diffstat (limited to 'engine/src/asset.rs')
| -rw-r--r-- | engine/src/asset.rs | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/engine/src/asset.rs b/engine/src/asset.rs index 4e50d9b..47a6dfc 100644 --- a/engine/src/asset.rs +++ b/engine/src/asset.rs @@ -334,7 +334,7 @@ impl Assets let asset_metadata = asset_id.and_then(|asset_id| metadata_lut.get(asset_id)); - let mut asset_exists_and_not_ready = false; + let mut is_asset_loading = false; if let Some(asset_metadata) = asset_metadata { match &asset_metadata.state { @@ -347,14 +347,17 @@ impl Assets AssetState::Ready => { return Status::Ready; } - AssetState::NotStored | AssetState::Loading => { - asset_exists_and_not_ready = true; + AssetState::Loading => { + // TODO: It might be possible to just return Status::Pending here + // since asset states are propagated to their related assets + is_asset_loading = true; } + AssetState::NotStored => {} } } if label.name.is_none() { - return if asset_exists_and_not_ready { + return if is_asset_loading { Status::Pending } else { Status::NotFound @@ -395,14 +398,14 @@ impl Assets // It would make no sense for a asset's status to be Status::Failed if the // parent asset has a missing dependency - if asset_exists_and_not_ready { + if is_asset_loading { Status::Pending } else { Status::NotFound } } Some(parent_asset_state) => parent_asset_state, - None if asset_exists_and_not_ready => Status::Pending, + None if is_asset_loading => Status::Pending, None => Status::NotFound, } } |
