Fix the following static checker warning:

 drivers/staging/rtl8723au/core/rtw_sta_mgt.c:365 rtw_get_stainfo23a()
 error: potential NULL dereference 'psta'.

Fixes: e280d71("staging: rtl8723au: use list_for_each_entry*()")
Signed-off-by: Geliang Tang <geliangt...@163.com>
---
 drivers/staging/rtl8723au/core/rtw_sta_mgt.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rtl8723au/core/rtw_sta_mgt.c 
b/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
index 22d857b..5f85ee0 100644
--- a/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
+++ b/drivers/staging/rtl8723au/core/rtw_sta_mgt.c
@@ -346,7 +346,7 @@ void rtw_free_all_stainfo23a(struct rtw_adapter *padapter)
 struct sta_info *rtw_get_stainfo23a(struct sta_priv *pstapriv, const u8 
*hwaddr)
 {
        struct list_head *phead;
-       struct sta_info *psta = NULL;
+       struct sta_info *pos, *psta = NULL;
        u32 index;
        const u8 *addr;
 
@@ -362,7 +362,9 @@ struct sta_info *rtw_get_stainfo23a(struct sta_priv 
*pstapriv, const u8 *hwaddr)
 
        spin_lock_bh(&pstapriv->sta_hash_lock);
        phead = &pstapriv->sta_hash[index];
-       list_for_each_entry(psta, phead, hash_list) {
+       list_for_each_entry(pos, phead, hash_list) {
+               psta = pos;
+
                /*  if found the matched address */
                if (ether_addr_equal(psta->hwaddr, addr))
                        break;
-- 
2.5.0


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to