fix: handle missing assets gracefully

This commit is contained in:
shenlong-tanwen
2025-07-23 19:24:29 +05:30
parent 05d26dc683
commit 19c9f932ea
4 changed files with 23 additions and 17 deletions
@@ -107,19 +107,22 @@ class _FixedSegmentRow extends ConsumerWidget {
}
if (timelineService.hasRange(assetIndex, assetCount)) {
return _buildAssetRow(
context,
timelineService.getAssets(assetIndex, assetCount),
);
final assets = timelineService.getAssets(assetIndex, assetCount);
if (assets == null) {
return _buildPlaceholder(context);
}
return _buildAssetRow(context, assets);
}
return FutureBuilder<List<BaseAsset>>(
return FutureBuilder<List<BaseAsset>?>(
future: timelineService.loadAssets(assetIndex, assetCount),
builder: (context, snapshot) {
if (snapshot.connectionState != ConnectionState.done) {
if (snapshot.connectionState != ConnectionState.done ||
snapshot.data == null) {
return _buildPlaceholder(context);
}
return _buildAssetRow(context, snapshot.requireData);
return _buildAssetRow(context, snapshot.data!);
},
);
}