mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-22 04:25:18 +00:00
util: kmod: use VIR_AUTOFREE instead of VIR_FREE for scalar types
By making use of GNU C's cleanup attribute handled by the VIR_AUTOFREE macro for declaring scalar variables, majority of the VIR_FREE calls can be dropped, which in turn leads to getting rid of most of our cleanup sections. Signed-off-by: Sukrit Bhatnagar <skrtbhtngr@gmail.com> Reviewed-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
parent
280c81af6a
commit
c8682fcede
@ -155,13 +155,12 @@ virKModUnload(const char *module)
|
||||
bool
|
||||
virKModIsBlacklisted(const char *module)
|
||||
{
|
||||
bool retval = false;
|
||||
size_t i;
|
||||
char *drvblklst = NULL;
|
||||
char *outbuf = NULL;
|
||||
VIR_AUTOFREE(char *) drvblklst = NULL;
|
||||
VIR_AUTOFREE(char *) outbuf = NULL;
|
||||
|
||||
if (virAsprintfQuiet(&drvblklst, "blacklist %s\n", module) < 0)
|
||||
goto cleanup;
|
||||
return false;
|
||||
|
||||
/* modprobe will convert all '-' into '_', so we need to as well */
|
||||
for (i = 0; i < drvblklst[i]; i++)
|
||||
@ -169,13 +168,10 @@ virKModIsBlacklisted(const char *module)
|
||||
drvblklst[i] = '_';
|
||||
|
||||
if (doModprobe("-c", NULL, &outbuf, NULL) < 0)
|
||||
goto cleanup;
|
||||
return false;
|
||||
|
||||
if (strstr(outbuf, drvblklst))
|
||||
retval = true;
|
||||
return true;
|
||||
|
||||
cleanup:
|
||||
VIR_FREE(drvblklst);
|
||||
VIR_FREE(outbuf);
|
||||
return retval;
|
||||
return false;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user