[PATCH 3/3] Check return value after firmware updates

Anton Lundin glance at acc.umu.se
Tue Oct 21 14:21:16 PDT 2014


This reports back a error to the user if the firmware update failed.

We should re-wire this to have a log-function that gets called from
libdivecomputer via the context to get an actual error message.

Signed-off-by: Anton Lundin <glance at acc.umu.se>
---
 configuredivecomputerthreads.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/configuredivecomputerthreads.cpp b/configuredivecomputerthreads.cpp
index 5f92a63..6d12d4d 100644
--- a/configuredivecomputerthreads.cpp
+++ b/configuredivecomputerthreads.cpp
@@ -695,11 +695,11 @@ void FirmwareUpdateThread::run()
 		case DC_FAMILY_HW_OSTC3:
 			//Not Yet supported
 			//supported = true;
-			//hw_ostc3_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
+			//rc = hw_ostc3_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
 			break;
 		case DC_FAMILY_HW_OSTC:
 			supported = true;
-			hw_ostc_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
+			rc = hw_ostc_device_fwupdate(m_data->device, m_fileName.toUtf8().data());
 			break;
 #endif	// divecomputer 0.5.0
 		default:
@@ -711,6 +711,8 @@ void FirmwareUpdateThread::run()
 		if (!supported) {
 			lastError = tr("This feature is not yet available for the selected dive computer.");
 			emit error(lastError);
+		} else if (rc != DC_STATUS_SUCCESS) {
+			lastError = tr("Firmware update failed!");
 		}
 	}
 	else {
-- 
1.9.1



More information about the subsurface mailing list