irda-usb: add error handling and fix leak