staging: rtl8188eu: fix usage of uninit scalar in rtw_drv_init()
authorChristian Engelmayer <cengelma@gmx.at>
Sat, 17 May 2014 10:38:57 +0000 (12:38 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 May 2014 16:46:38 +0000 (01:46 +0900)
Function rtw_drv_init() is written in a way that assumes 'status' != _SUCCESS
as long as not explicitly set. Thus initialize 'status' to FAIL, in order to
prevent undefined behaviour if going through the exit paths. Detected by
Coverity - CID 1077832.

Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Acked-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/rtl8188eu/os_dep/usb_intf.c

index e8ccb576b4b5f3bfbed83bfe2ee55b41db6335e8..86f0ab9ef727c377ef7a97bca194932e62219751 100644 (file)
@@ -686,7 +686,7 @@ static void rtw_usb_if1_deinit(struct adapter *if1)
 static int rtw_drv_init(struct usb_interface *pusb_intf, const struct usb_device_id *pdid)
 {
        struct adapter *if1 = NULL;
-       int status;
+       int status = _FAIL;
        struct dvobj_priv *dvobj;
 
        RT_TRACE(_module_hci_intfs_c_, _drv_err_, ("+rtw_drv_init\n"));