staging: wilc1000: free allocated memory in edit and add station functions
authorAjay Singh <ajay.kathat@microchip.com>
Mon, 26 Mar 2018 11:45:57 +0000 (17:15 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 28 Mar 2018 11:38:46 +0000 (13:38 +0200)
Added fix to free the allocated memory in case of failure to enqueue
the command.

Signed-off-by: Ajay Singh <ajay.kathat@microchip.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/wilc1000/host_interface.c

index 020baf15e02d59f45342a6a069fce8f3ca78fa8b..89972e86c7090ded1f9fef62321d93fc9152ed8f 100644 (file)
@@ -3721,8 +3721,10 @@ int wilc_add_station(struct wilc_vif *vif, struct add_sta_param *sta_param)
        }
 
        result = wilc_enqueue_cmd(&msg);
-       if (result)
+       if (result) {
                netdev_err(vif->ndev, "wilc_mq_send fail\n");
+               kfree(add_sta_info->rates);
+       }
        return result;
 }
 
@@ -3805,8 +3807,10 @@ int wilc_edit_station(struct wilc_vif *vif,
        }
 
        result = wilc_enqueue_cmd(&msg);
-       if (result)
+       if (result) {
                netdev_err(vif->ndev, "wilc_mq_send fail\n");
+               kfree(add_sta_info->rates);
+       }
 
        return result;
 }