Commit f12a2f74 authored by Don Gagne's avatar Don Gagne

Make sure hdr.size is always set

Otherwise we can end up generating strange CRCs.
parent 80956e42
...@@ -78,6 +78,9 @@ QGCUASFileManager::QGCUASFileManager(QObject* parent, UASInterface* uas, uint8_t ...@@ -78,6 +78,9 @@ QGCUASFileManager::QGCUASFileManager(QObject* parent, UASInterface* uas, uint8_t
connect(&_ackTimer, &QTimer::timeout, this, &QGCUASFileManager::_ackTimeout); connect(&_ackTimer, &QTimer::timeout, this, &QGCUASFileManager::_ackTimeout);
_systemIdServer = _mav->getUASID(); _systemIdServer = _mav->getUASID();
// Make sure we don't have bad structure packing
Q_ASSERT(sizeof(RequestHeader) == 12);
} }
/// @brief Calculates a 32 bit CRC for the specified request. /// @brief Calculates a 32 bit CRC for the specified request.
...@@ -184,6 +187,7 @@ void QGCUASFileManager::_readAckResponse(Request* readAck) ...@@ -184,6 +187,7 @@ void QGCUASFileManager::_readAckResponse(Request* readAck)
request.hdr.session = _activeSession; request.hdr.session = _activeSession;
request.hdr.opcode = kCmdRead; request.hdr.opcode = kCmdRead;
request.hdr.offset = _readOffset; request.hdr.offset = _readOffset;
request.hdr.size = 0;
_sendRequest(&request); _sendRequest(&request);
} else { } else {
...@@ -383,6 +387,7 @@ void QGCUASFileManager::_sendListCommand(void) ...@@ -383,6 +387,7 @@ void QGCUASFileManager::_sendListCommand(void)
request.hdr.session = 0; request.hdr.session = 0;
request.hdr.opcode = kCmdList; request.hdr.opcode = kCmdList;
request.hdr.offset = _listOffset; request.hdr.offset = _listOffset;
request.hdr.size = 0;
_fillRequestWithString(&request, _listPath); _fillRequestWithString(&request, _listPath);
...@@ -417,6 +422,7 @@ void QGCUASFileManager::downloadPath(const QString& from, const QDir& downloadDi ...@@ -417,6 +422,7 @@ void QGCUASFileManager::downloadPath(const QString& from, const QDir& downloadDi
request.hdr.session = 0; request.hdr.session = 0;
request.hdr.opcode = kCmdOpen; request.hdr.opcode = kCmdOpen;
request.hdr.offset = 0; request.hdr.offset = 0;
request.hdr.size = 0;
_fillRequestWithString(&request, from); _fillRequestWithString(&request, from);
_sendRequest(&request); _sendRequest(&request);
} }
...@@ -519,6 +525,7 @@ void QGCUASFileManager::_sendTerminateCommand(void) ...@@ -519,6 +525,7 @@ void QGCUASFileManager::_sendTerminateCommand(void)
Request request; Request request;
request.hdr.session = _activeSession; request.hdr.session = _activeSession;
request.hdr.opcode = kCmdTerminate; request.hdr.opcode = kCmdTerminate;
request.hdr.size = 0;
_sendRequest(&request); _sendRequest(&request);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment