diff options
Diffstat (limited to 'Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp')
| -rw-r--r-- | Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp b/Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp index ef6989ad9b..11c98ee883 100644 --- a/Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp +++ b/Source/Core/DolphinQt/Config/WiimoteControllersWidget.cpp @@ -309,8 +309,15 @@ void WiimoteControllersWidget::OnBluetoothPassthroughDeviceChanged(int index) return; } - auto device_info = - m_bluetooth_adapters->itemData(index).value<LibUSBBluetoothAdapter::BluetoothDeviceInfo>(); + const QVariant item_data = m_bluetooth_adapters->itemData(index); + + if (!item_data.isValid() || !item_data.canConvert<LibUSBBluetoothAdapter::BluetoothDeviceInfo>()) + { + ERROR_LOG_FMT(COMMON, "Invalid Bluetooth device info selected in WiimoteControllersWidget"); + return; + } + + const auto& device_info = item_data.value<LibUSBBluetoothAdapter::BluetoothDeviceInfo>(); Config::SetBaseOrCurrent(Config::MAIN_BLUETOOTH_PASSTHROUGH_PID, device_info.pid); Config::SetBaseOrCurrent(Config::MAIN_BLUETOOTH_PASSTHROUGH_VID, device_info.vid); |
