> > +/* parse inbound and outbound which are in the format of > > + * 'average,peak,burst', in which peak and burst are optional, > > + * thus 'average,,burst' and 'average,peak' are also legal. */ > > +static int parseRateStr(const char *rateStr, virRatePtr rate) > > +{ > > + char *average = NULL, *peak = NULL, *burst = NULL; > > + > > + average = (char *)rateStr; > > I'd vote for const correctness here; > So, either change average to be const char *, or leave it out and > use passed rateStr directly instead. used const char * in v3. > > + if (inboundStr || outboundStr) { > > + virBufferAsprintf(&buf, " <bandwidth>\n"); > > + if (inboundStr && inbound.average > 0) { > > + virBufferAsprintf(&buf, " <inbound average='%lld'", inbound.average); > > + if (inbound.peak > 0) > > + virBufferAsprintf(&buf, " peak='%lld'", inbound.peak); > > + if (inbound.burst > 0) > > + virBufferAsprintf(&buf, " burst='%lld'", inbound.burst); > > + virBufferAsprintf(&buf, "/>\n"); > > + } > > + if (outboundStr && outbound.average > 0) { > > + virBufferAsprintf(&buf, " <outbound average='%lld'", outbound.average); > > + if (outbound.peak > 0) > > + virBufferAsprintf(&buf, " peak='%lld'", outbound.peak); > > + if (outbound.burst > 0) > > + virBufferAsprintf(&buf, " burst='%lld'", outbound.burst); > > + virBufferAsprintf(&buf, "/>\n"); > > + } > > + virBufferAsprintf(&buf, " </bandwidth>\n"); > > + } > > + > > Since [in|out]bound average, peak and burst are defined as unsigned long > long, you can actually check for (outbound.peak) instead of > (outbound.peak > 0), but you can leave it as-is. But I'd prefer to > change print format from '%lld' to '%llu'. I am surprised my gcc does > not warn about it. changed format from '%lld' to '%llu'. > > ACK with those nits fixed. Thanks for you comments. -- Thanks, Hu Tao -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list