Index: sources/device/DeviceView.cpp =================================================================== diff -u -ra2a273600d25e863214833ead3324a63fb4759f1 -r3f24acee28d26034c018241f9beb35fb4887c143 --- sources/device/DeviceView.cpp (.../DeviceView.cpp) (revision a2a273600d25e863214833ead3324a63fb4759f1) +++ sources/device/DeviceView.cpp (.../DeviceView.cpp) (revision 3f24acee28d26034c018241f9beb35fb4887c143) @@ -364,7 +364,7 @@ QString mRSN_FLAGS; QStringList fields = lines[row].split(','); -// qDebug() << fields.join("-"); + // DEBUG: qDebug() << fields.join("-"); // this will never fail since even an empty string in split at least has index 0=eSSID; mSSID = fields[eSSID].trimmed(); if ( mSSID.isEmpty() ) continue; //hidden networks, or an incorrect entry @@ -432,6 +432,7 @@ data.mWifiSignalLevel = ssid.mSIGNAL_Max; data.mWifiSupported = ssid.mSupported; data.mWifiConnected = ssid.mInUse ; + dataAppend( data, ssid.mInUse, ssid.mSupported); } } @@ -466,10 +467,6 @@ case eRole_WifiSignalLevel : return dataList.mWifiSignalLevel ; case eRole_WifiSupported : return dataList.mWifiSupported ; case eRole_WifiConnected : return dataList.mWifiConnected ; - case eRole_WifiIpAddress : return dataList.mWifiIpAddress ; - case eRole_WifiGateway : return dataList.mWifiGateway ; - case eRole_WifiSubnetMask : return dataList.mWifiSubnetMask ; - case eRole_WifiDns : return dataList.mWifiDns ; // ----- Bluetooth case eRole_BLE_UNUSED : return ""; ; @@ -497,7 +494,6 @@ } // explicitly emit a dataChanged signal to notify anybody bound to this property (vRole) -// emit dataChanged(vIndex, vIndex, {vRole}); emit dataChanged(vIndex, vIndex, QVector(1, vRole)); return true; } @@ -551,18 +547,24 @@ eSUBNETMASK , eGATEWAY , eDNS , + eCount , }; QString mResult = vResult; QStringList fields = mResult.split(','); + if (fields.size() < eCount) + return; + if (! fields[eSSID].trimmed().isEmpty()) { ssid(fields[eSSID].trimmed()); ipAddress(fields[eIPADDRESS].trimmed()); subnetMask(fields[eSUBNETMASK].trimmed()); gateway(fields[eGATEWAY].trimmed()); QStringList dnsList = fields.mid(eDNS); - dns(dnsList.join('\n').trimmed()); + for (QString& s : dnsList) + s = s.trimmed(); + dns(dnsList.join('\n')); } else { ssid("");