diff --git a/ChangeLog b/ChangeLog index 8bb3e8ebe4..544ea11045 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon Jun 4 10:41:25 CEST 2007 Daniel Veillard + + * src/xml.c: apply patch from Masayuki Sunou about an uninitialized + string when attaching a device + Fri Jun 1 16:02:12 CEST 2007 Daniel Veillard * src/xml.c: added a comment about (type ioemu) not needed diff --git a/src/xml.c b/src/xml.c index bcce322006..7f9a60ee15 100644 --- a/src/xml.c +++ b/src/xml.c @@ -1482,6 +1482,7 @@ virParseXMLDevice(virConnectPtr conn, char *xmldesc, int hvm, int xendConfigVers return (NULL); buf.size = 1000; buf.use = 0; + buf.content[0] = 0; xml = xmlReadDoc((const xmlChar *) xmldesc, "domain.xml", NULL, XML_PARSE_NOENT | XML_PARSE_NONET | XML_PARSE_NOERROR | XML_PARSE_NOWARNING); @@ -1493,6 +1494,9 @@ virParseXMLDevice(virConnectPtr conn, char *xmldesc, int hvm, int xendConfigVers if (xmlStrEqual(node->name, BAD_CAST "disk")) { if (virDomainParseXMLDiskDesc(conn, node, &buf, hvm, xendConfigVersion) != 0) goto error; + /* SXP is not created when device is "floppy". */ + else if (buf.use == 0) + goto error; } else if (xmlStrEqual(node->name, BAD_CAST "interface")) { if (virDomainParseXMLIfDesc(conn, node, &buf, hvm) != 0)