conf: Don't assign value from ..TypeFromString directly to enum

Enums are unsigned, so it's impossible to check whether the helper
returned -1 for invalid conversions.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1452454
This commit is contained in:
Peter Krempa 2017-05-19 10:25:00 +02:00
parent dd875fb326
commit 85d62624c5

View File

@ -14083,6 +14083,7 @@ virDomainMemoryDefParseXML(xmlNodePtr memdevNode,
xmlNodePtr save = ctxt->node; xmlNodePtr save = ctxt->node;
xmlNodePtr node; xmlNodePtr node;
virDomainMemoryDefPtr def; virDomainMemoryDefPtr def;
int val;
ctxt->node = memdevNode; ctxt->node = memdevNode;
@ -14102,12 +14103,14 @@ virDomainMemoryDefParseXML(xmlNodePtr memdevNode,
} }
VIR_FREE(tmp); VIR_FREE(tmp);
tmp = virXMLPropString(memdevNode, "access"); if ((tmp = virXMLPropString(memdevNode, "access"))) {
if (tmp && if ((val = virDomainMemoryAccessTypeFromString(tmp)) <= 0) {
(def->access = virDomainMemoryAccessTypeFromString(tmp)) <= 0) { virReportError(VIR_ERR_XML_ERROR,
virReportError(VIR_ERR_XML_ERROR, _("invalid access mode '%s'"), tmp);
_("invalid access mode '%s'"), tmp); goto error;
goto error; }
def->access = val;
} }
VIR_FREE(tmp); VIR_FREE(tmp);