1. Return value of this function does not used; 2. wilc_parse_network_info has no reasons to return an error; 3. kfree does not free memory if argument is NULL. Signed-off-by: Ivan Safonov <insafonov@xxxxxxxxx> --- drivers/staging/wilc1000/coreconfigurator.c | 27 +++++---------------------- drivers/staging/wilc1000/coreconfigurator.h | 2 +- 2 files changed, 6 insertions(+), 23 deletions(-) diff --git a/drivers/staging/wilc1000/coreconfigurator.c b/drivers/staging/wilc1000/coreconfigurator.c index 2d4d3f1..a36918c 100644 --- a/drivers/staging/wilc1000/coreconfigurator.c +++ b/drivers/staging/wilc1000/coreconfigurator.c @@ -458,34 +458,17 @@ s32 wilc_parse_network_info(u8 *pu8MsgBuffer, tstrNetworkInfo **ppstrNetworkInfo /** * @brief Deallocates the parsed Network Info - * @details * @param[in] pstrNetworkInfo Network Info to be deallocated - * @return Error code indicating success/failure - * @note * @author mabubakr * @date 1 Mar 2012 - * @version 1.0 */ -s32 wilc_dealloc_network_info(tstrNetworkInfo *pstrNetworkInfo) +void wilc_dealloc_network_info(tstrNetworkInfo *network_info) { - s32 s32Error = 0; + if (!network_info) + return; - if (pstrNetworkInfo) { - if (pstrNetworkInfo->pu8IEs) { - kfree(pstrNetworkInfo->pu8IEs); - pstrNetworkInfo->pu8IEs = NULL; - } else { - s32Error = -EFAULT; - } - - kfree(pstrNetworkInfo); - pstrNetworkInfo = NULL; - - } else { - s32Error = -EFAULT; - } - - return s32Error; + kfree(network_info->pu8IEs); + kfree(network_info); } /** diff --git a/drivers/staging/wilc1000/coreconfigurator.h b/drivers/staging/wilc1000/coreconfigurator.h index fc43d04..8c28c6b 100644 --- a/drivers/staging/wilc1000/coreconfigurator.h +++ b/drivers/staging/wilc1000/coreconfigurator.h @@ -130,7 +130,7 @@ typedef struct { s32 wilc_send_config_pkt(struct wilc *wilc, u8 mode, struct wid *wids, u32 count, u32 drv); s32 wilc_parse_network_info(u8 *pu8MsgBuffer, tstrNetworkInfo **ppstrNetworkInfo); -s32 wilc_dealloc_network_info(tstrNetworkInfo *pstrNetworkInfo); +void wilc_dealloc_network_info(tstrNetworkInfo *network_info); s32 wilc_parse_assoc_resp_info(u8 *pu8Buffer, u32 u32BufferLen, tstrConnectRespInfo **ppstrConnectRespInfo); -- 2.4.10 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel