Commit id '
740e4d70' altered the logic to fetch the sysconf values and
added a new virConfGetValueStringList which returns -1 on failure, 0 if
missing, and 1 if the value was present.
However, the caller only checked !shargv which caught Coverity's attention
since the following VIR_ALLOC_N(*shargv, 2) would be a NULL ptr deref
Signed-off-by: John Ferlan <jferlan@redhat.com>
char ***shargv,
size_t *shargvlen)
{
- if (virConfGetValueStringList(conf, "shell", true, shargv) < 0)
+ int rv;
+
+ if ((rv = virConfGetValueStringList(conf, "shell", true, shargv)) < 0)
return -1;
- if (!shargv) {
+ if (rv == 0) {
if (VIR_ALLOC_N(*shargv, 2) < 0)
return -1;
if (VIR_STRDUP((*shargv)[0], "/bin/sh") < 0) {