提交 d3ffa0ec 编写于 作者: R Roman Bogorodskiy

nodedev: fix build with clang

Build fails with:

conf/node_device_conf.c:825:62: error: comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-compare]
    if ((data->drm.type = virNodeDevDRMTypeFromString(type)) < 0) {
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
conf/node_device_conf.c:1801:59: error: comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-compare]
        if ((type = virNodeDevDevnodeTypeFromString(tmp)) < 0) {
            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~
2 errors generated.

Fix by using intermediate variable to store the result similarly
to how it's done for other FromString* calls.
上级 78c01869
......@@ -814,7 +814,7 @@ virNodeDevCapDRMParseXML(xmlXPathContextPtr ctxt,
virNodeDevCapDataPtr data)
{
xmlNodePtr orignode;
int ret = -1;
int ret = -1, val;
char *type = NULL;
orignode = ctxt->node;
......@@ -822,11 +822,12 @@ virNodeDevCapDRMParseXML(xmlXPathContextPtr ctxt,
type = virXPathString("string(./type[1])", ctxt);
if ((data->drm.type = virNodeDevDRMTypeFromString(type)) < 0) {
if ((val = virNodeDevDRMTypeFromString(type)) < 0) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("unknown drm type '%s' for '%s'"), type, def->name);
goto out;
}
data->drm.type = val;
ret = 0;
......@@ -1791,6 +1792,7 @@ virNodeDeviceDefParseXML(xmlXPathContextPtr ctxt,
xmlNodePtr node = nodes[i];
char *tmp = virXMLPropString(node, "type");
virNodeDevDevnodeType type;
int val;
if (!tmp) {
virReportError(VIR_ERR_INTERNAL_ERROR,
......@@ -1798,12 +1800,13 @@ virNodeDeviceDefParseXML(xmlXPathContextPtr ctxt,
goto error;
}
if ((type = virNodeDevDevnodeTypeFromString(tmp)) < 0) {
if ((val = virNodeDevDevnodeTypeFromString(tmp)) < 0) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("unknown devnode type '%s'"), tmp);
VIR_FREE(tmp);
goto error;
}
type = val;
switch (type) {
case VIR_NODE_DEV_DEVNODE_DEV:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册