return -1;
*drvname = strdup(devargs_str);
- if (drvname == NULL)
+ if (*drvname == NULL)
return -1;
/* set the first ',' to '\0' to split name and arguments */
if (*drvargs == NULL) {
free(*drvname);
+ *drvname = NULL;
return -1;
}
return 0;
return 0;
fail:
- if (buf)
- free(buf);
+ free(buf);
if (devargs) {
free(devargs->args);
free(devargs);