SerialBusConnection: Improve connect/disconnect handling

* disconnectDevice() already checks mDev_p
* use the error description provided by QCanBus::createDevice()
This commit is contained in:
Andre Hartmann
2017-11-25 17:27:38 +01:00
parent 15aef1afbe
commit 84cb598a0d
+4 -4
View File
@@ -67,8 +67,7 @@ void SerialBusConnection::piSetBusSettings(int pBusIdx, CANBus bus)
return;
/* disconnect device if we have one connected */
if(mDev_p)
disconnectDevice();
disconnectDevice();
/* copy bus config */
setBusConfig(0, bus);
@@ -78,10 +77,11 @@ void SerialBusConnection::piSetBusSettings(int pBusIdx, CANBus bus)
return;
/* create device */
mDev_p = QCanBus::instance()->createDevice("socketcan", getPort());
QString errorString;
mDev_p = QCanBus::instance()->createDevice("socketcan", getPort(), &errorString);
if (!mDev_p) {
disconnectDevice();
qDebug() << "can't create device";
qDebug() << "Error: createDevice(" << getType() << getPort() << "):" << errorString;
return;
}