diff options
Diffstat (limited to 'drivers/base/firmware_class.c')
| -rw-r--r-- | drivers/base/firmware_class.c | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c index 8524450e75bd..b9250e564ebf 100644 --- a/drivers/base/firmware_class.c +++ b/drivers/base/firmware_class.c @@ -1118,15 +1118,17 @@ static int  _request_firmware(const struct firmware **firmware_p, const char *name,  		  struct device *device, unsigned int opt_flags)  { -	struct firmware *fw; +	struct firmware *fw = NULL;  	long timeout;  	int ret;  	if (!firmware_p)  		return -EINVAL; -	if (!name || name[0] == '\0') -		return -EINVAL; +	if (!name || name[0] == '\0') { +		ret = -EINVAL; +		goto out; +	}  	ret = _request_firmware_prepare(&fw, name, device);  	if (ret <= 0) /* error or already assigned */ | 
