mirror of
https://github.com/gabehf/Fladder.git
synced 2026-03-08 23:18:16 -07:00
fix: Bunc of uncaught exceptions
This commit is contained in:
parent
9c964e7b41
commit
9f6aa1e489
6 changed files with 34 additions and 23 deletions
|
|
@ -27,12 +27,21 @@ class _TrickPlayImageState extends ConsumerState<TrickPlayImage> {
|
|||
late Offset currentOffset = const Offset(0, 0);
|
||||
String? currentUrl;
|
||||
|
||||
bool _isMounted = true;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
loadImage();
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
image?.dispose();
|
||||
_isMounted = false;
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
@override
|
||||
void didUpdateWidget(covariant TrickPlayImage oldWidget) {
|
||||
super.didUpdateWidget(oldWidget);
|
||||
|
|
@ -55,6 +64,7 @@ class _TrickPlayImageState extends ConsumerState<TrickPlayImage> {
|
|||
}
|
||||
|
||||
Future<void> loadImage() async {
|
||||
if (!_isMounted) return;
|
||||
if (model.images.isEmpty) return;
|
||||
final newUrl = model.getTile(time);
|
||||
currentOffset = model.offset(time);
|
||||
|
|
@ -76,11 +86,10 @@ class _TrickPlayImageState extends ConsumerState<TrickPlayImage> {
|
|||
final Uint8List bytes = response.bodyBytes;
|
||||
final ui.Codec codec = await ui.instantiateImageCodec(bytes);
|
||||
final ui.FrameInfo frameInfo = await codec.getNextFrame();
|
||||
if (context.mounted) {
|
||||
setState(() {
|
||||
image = frameInfo.image;
|
||||
});
|
||||
}
|
||||
if (!_isMounted) return;
|
||||
setState(() {
|
||||
image = frameInfo.image;
|
||||
});
|
||||
} else {
|
||||
throw Exception('Failed to load network image');
|
||||
}
|
||||
|
|
@ -90,6 +99,7 @@ class _TrickPlayImageState extends ConsumerState<TrickPlayImage> {
|
|||
final Uint8List bytes = await File(path).readAsBytes();
|
||||
final ui.Codec codec = await ui.instantiateImageCodec(bytes);
|
||||
final ui.FrameInfo frameInfo = await codec.getNextFrame();
|
||||
if (!_isMounted) return;
|
||||
setState(() {
|
||||
image = frameInfo.image;
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue