On 07/01/2011 04:40 AM, Scott Moser wrote: > linux 3.0 has no micro version number, and that is causing problems > for virParseVersionString. The patch below should allow for: > major > major.minor > major.minor.micro > > If major or minor are not present they just default to zero. > We found this in Ubuntu (https://bugs.launchpad.net/bugs/802977) > > diff --git a/src/util/util.c b/src/util/util.c > index 463d2b8..01848a1 100644 > --- a/src/util/util.c > +++ b/src/util/util.c > @@ -1598,17 +1598,17 @@ virParseNumber(const char **str) > int > virParseVersionString(const char *str, unsigned long *version) > { > - unsigned int major, minor, micro; > + unsigned int major, minor=0, micro=0; Formatting - we tend to put spaces around operators. > char *tmp; > > - if (virStrToLong_ui(str, &tmp, 10, &major) < 0 || *tmp != '.') > + if (virStrToLong_ui(str, &tmp, 10, &major) < 0) > return -1; > > - if (virStrToLong_ui(tmp + 1, &tmp, 10, &minor) < 0 || *tmp != '.') > - return -1; > + if ((*tmp == '.') && virStrToLong_ui(tmp + 1, &tmp, 10, &minor) < 0) > + return -1; Spurious whitespace change in the return statements. ACK (see my other reply in this thread) and pushed with that fixed, as well as adding you to AUTHORS (let me know if you prefer any alternate spellings). -- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list