diff --git a/lib/screens/metering/bloc_metering.dart b/lib/screens/metering/bloc_metering.dart index 3f78928..5b0d584 100644 --- a/lib/screens/metering/bloc_metering.dart +++ b/lib/screens/metering/bloc_metering.dart @@ -166,6 +166,10 @@ class MeteringBloc extends Bloc { } List _buildExposureValues(double ev) { + if (ev.isNaN || ev.isInfinite) { + return List.empty(growable: false); + } + /// Depending on the `stopType` the exposure pairs list length is multiplied by 1,2 or 3 final int evSteps = (ev * (stopType.index + 1)).round(); diff --git a/lib/screens/metering/components/bottom_controls/components/measure_button/widget_button_measure.dart b/lib/screens/metering/components/bottom_controls/components/measure_button/widget_button_measure.dart index a29997a..352990a 100644 --- a/lib/screens/metering/components/bottom_controls/components/measure_button/widget_button_measure.dart +++ b/lib/screens/metering/components/bottom_controls/components/measure_button/widget_button_measure.dart @@ -92,6 +92,13 @@ class _EvValueText extends StatelessWidget { @override Widget build(BuildContext context) { + if (ev.isNaN || ev.isInfinite) { + return Icon( + Icons.error, + color: Theme.of(context).colorScheme.surface, + ); + } + final theme = Theme.of(context); return Text( '${ev.toStringAsFixed(1)}\n${S.of(context).ev}',