From 97a08a7e37835f0e8619d22c83243bee26a2bff2 Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Fri, 7 Dec 2018 17:17:43 +0100 Subject: Smalls improvements - Improve robustness reading a BCM socket Adding checks on system calls and remove the initialization of the struct that will hold the received message, not so much needed in that case. - More accurate log message at subscription/unsubscription step whether this is a FD CAN messages or not and if this a subscription or an unsubscription that is requested. - Initialize the full struct of vehicle message to avoid memory warning about conditionnal jump based on uninitialized bytes. - Memleak: Free raw pointer on active diagnostic requests Change-Id: I4bbf4d851c0fa1efdb6fa6034fac3d1dcafa1a73 Signed-off-by: Romain Forlot --- low-can-binding/diagnostic/diagnostic-manager.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'low-can-binding/diagnostic') diff --git a/low-can-binding/diagnostic/diagnostic-manager.cpp b/low-can-binding/diagnostic/diagnostic-manager.cpp index ba4b0c87..55e61084 100644 --- a/low-can-binding/diagnostic/diagnostic-manager.cpp +++ b/low-can-binding/diagnostic/diagnostic-manager.cpp @@ -188,6 +188,8 @@ void diagnostic_manager_t::find_and_erase(active_diagnostic_request_t* entry, st void diagnostic_manager_t::cancel_request(active_diagnostic_request_t* entry) { entry->get_socket().close(); + if(entry->get_handle()) + delete(entry->get_handle()); delete entry; entry = nullptr; } -- cgit 1.2.3-korg