If 'find_device()' finds something, we set '*error_out' and we should
return an error. However, 'err' is known to be 0 at this point.
Explicitly return -EINVAL instead.
While at it, remove the initialization of 'err' at the beginning of the
function and also explicitly return an error code if the first check
fails.
Fixes: ad1f62ab2bd4 ("High Performance UML Vector Network Driver")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Richard Weinberger <richard@nod.at>
static int vector_parse(char *str, int *index_out, char **str_out,
char **error_out)
{
- int n, len, err = -EINVAL;
+ int n, len, err;
char *start = str;
len = strlen(str);
str++;
if (*str != ':') {
*error_out = "Expected ':' after device number";
- return err;
+ return -EINVAL;
}
*str = '\0';
str++;
if (find_device(n)) {
*error_out = "Device already configured";
- return err;
+ return -EINVAL;
}
*index_out = n;