diff --git a/lib/BlindMasterScreens/addingDevices/device_setup.dart b/lib/BlindMasterScreens/addingDevices/device_setup.dart index a2b1895..ec86a2f 100644 --- a/lib/BlindMasterScreens/addingDevices/device_setup.dart +++ b/lib/BlindMasterScreens/addingDevices/device_setup.dart @@ -91,12 +91,21 @@ class _DeviceSetupState extends State { List rawData = await ssidListChar.read(); try { + if (rawData.isEmpty) { + throw Exception("No data received from device"); + } + final val = utf8.decode(rawData); + if (val.trim().isEmpty) { + throw Exception("Empty response from device"); + } + final decoded = json.decode(val) as List; networks = decoded.map((e) => e as Map).toList(); } catch (e) { if(!mounted)return; ScaffoldMessenger.of(context).showSnackBar(errorSnackbar(e)); + networks = []; // Set to empty list on error } // Acknowledge completion