From d7257ad446a3a7b35d2c370bf5e8c2153fc93a5f Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Fri, 14 Nov 2014 13:11:34 -0800 Subject: [PATCH] Better Windows error reporting --- libs/qextserialport/src/qextserialport_win.cpp | 18 ++++++++---------- .../PX4FirmwareUpgradeThread.cc | 5 ----- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/libs/qextserialport/src/qextserialport_win.cpp b/libs/qextserialport/src/qextserialport_win.cpp index caa68988d..b53e204f6 100755 --- a/libs/qextserialport/src/qextserialport_win.cpp +++ b/libs/qextserialport/src/qextserialport_win.cpp @@ -164,17 +164,15 @@ void QextSerialPortPrivate::translateError(ulong error) lastOSErr = error; lastErr = E_OS_SPECIFIC; - LPVOID lpMsgBuf; - FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | - FORMAT_MESSAGE_FROM_SYSTEM | + char buf[256]; + FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, error, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - (LPTSTR) &lpMsgBuf, - 0, NULL); - lastOSErrString = QString((char*)lpMsgBuf); - LocalFree(lpMsgBuf); + buf, sizeof(buf), + NULL); + lastOSErrString = buf; } /* @@ -204,8 +202,8 @@ qint64 QextSerialPortPrivate::readData_sys(char *data, qint64 maxSize) if (!failed) return (qint64)bytesRead; - lastErr = E_READ_FAILED; - return -1; + translateError(GetLastError()); + return -1; } /* @@ -249,7 +247,7 @@ qint64 QextSerialPortPrivate::writeData_sys(const char *data, qint64 maxSize) if (!failed) return (qint64)bytesWritten; - lastErr = E_WRITE_FAILED; + translateError(GetLastError()); return -1; } diff --git a/src/ui/px4_configuration/PX4FirmwareUpgradeThread.cc b/src/ui/px4_configuration/PX4FirmwareUpgradeThread.cc index f06b303f0..95b4e90e1 100644 --- a/src/ui/px4_configuration/PX4FirmwareUpgradeThread.cc +++ b/src/ui/px4_configuration/PX4FirmwareUpgradeThread.cc @@ -102,11 +102,6 @@ void PX4FirmwareUpgradeThreadWorker::_findBoardOnce(void) portName = info.systemLocation(); portDescription = info.description(); -#ifdef Q_OS_WIN - // Stupid windows fixes - portName.prepend("\\\\.\\"); -#endif - _closeFind(); emit foundBoard(_findBoardFirstAttempt, portName, portDescription); return; -- 2.22.0