On 02/08/2011 08:02 PM, Osier Yang wrote: > ä 2011å02æ09æ 01:12, Eric Blake åé: >> On 02/08/2011 03:30 AM, Osier Yang wrote: >>> +bool >>> +virIsDevMapperDevice(const char *devname) >>> +{ >>> + struct stat buf; >>> + >>> + if (devname&& >>> + !stat(devname,&buf)&& >> >> One other thing - the check for devname being non-NULL is not >> necessary... >> >>> +bool virIsDevMapperDevice(const char *devname); >> >> if you add ATTRIBUTE_NONNULL(1) to this declaration. Given that the >> only use of this new function to date doesn't pass a NULL pointer, we >> might as well make that part of the API. >> > Yeah, it's more reasonable to add ATTRIBUTE_NONNULL to this internal > function, but do we need to make change on the API? I'm not sure > if it will introduce some problem. Adding ATTRIBUTE_NONNULL _is_ the API change I was referring to - it simplifies the implementation, and puts a contract on the caller to not pass NULL. We can always remove it later (and re-instate the explicit null check in the implementation) if we find a reason to, since the function is internal. -- 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