mavlink: refactor get_client_source_address() to return a reference instead of a pointer

This commit is contained in:
Beat Küng
2018-06-25 11:05:22 +02:00
committed by Lorenz Meier
parent aa270fcd89
commit 4553992760
2 changed files with 5 additions and 5 deletions

View File

@@ -432,7 +432,7 @@ public:
const in_addr compute_broadcast_addr(const in_addr &host_addr, const in_addr &netmask_addr);
struct sockaddr_in *get_client_source_address() { return &_src_addr; }
struct sockaddr_in &get_client_source_address() { return _src_addr; }
void set_client_source_initialized() { _src_addr_initialized = true; }

View File

@@ -2546,7 +2546,7 @@ MavlinkReceiver::receive_thread(void *arg)
// could be TCP or other protocol
}
struct sockaddr_in *srcaddr_last = _mavlink->get_client_source_address();
struct sockaddr_in &srcaddr_last = _mavlink->get_client_source_address();
int localhost = (127 << 24) + 1;
@@ -2558,9 +2558,9 @@ MavlinkReceiver::receive_thread(void *arg)
hrt_abstime stime = _mavlink->get_start_time();
if ((stime != 0 && (hrt_elapsed_time(&stime) > 3 * 1000 * 1000))
|| (srcaddr_last->sin_addr.s_addr == htonl(localhost))) {
srcaddr_last->sin_addr.s_addr = srcaddr.sin_addr.s_addr;
srcaddr_last->sin_port = srcaddr.sin_port;
|| (srcaddr_last.sin_addr.s_addr == htonl(localhost))) {
srcaddr_last.sin_addr.s_addr = srcaddr.sin_addr.s_addr;
srcaddr_last.sin_port = srcaddr.sin_port;
_mavlink->set_client_source_initialized();
PX4_INFO("partner IP: %s", inet_ntoa(srcaddr.sin_addr));
}