Fix to return -ENOMEM in the memory alloc error handling
case instead of 0, as done elsewhere in this function.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
         len = fw_entry->size;
 
        buf = kmalloc(1024, GFP_ATOMIC);
-       if (!buf)
+       if (!buf) {
+               err = -ENOMEM;
                goto exit;
+       }
        
        while (len > 0) {
                int translen = (len > 1024) ? 1024 : len;
        zd->endp_out2 = 2;
        zd->rx_urb = usb_alloc_urb(0, GFP_KERNEL);
        zd->tx_urb = usb_alloc_urb(0, GFP_KERNEL);
-       if (!zd->rx_urb || !zd->tx_urb)
+       if (!zd->rx_urb || !zd->tx_urb) {
+               err = -ENOMEM;
                goto err_zd;
+       }
 
        mdelay(100);
        err = zd1201_drvr_start(zd);