On 11/12/2010 10:47 AM, Stefan Berger wrote: >>> - if (list) >>> - fclose(list); >>> - else >>> - VIR_FORCE_CLOSE(fd); >>> + VIR_FORCE_FCLOSE(list); >>> + VIR_FORCE_CLOSE(fd); >> You just introduced a double close. list was created via fdopen(fd), > :-( In that case, what about wrapping fdopen with FDOPEN and set fd to > -1 if the function succeeds, i.e., returns != NULL? >> which effectively consumes fd. Maybe we need to add VIR_FDOPEN which >> auto-sets an fdopen'd fd to -1 on success? Maybe not, but then you need >> to adjust the fdopen() call site to invalidate fd so we don't re-close >> it. Sounds like we're in violent agreement. :) VIR_FDOPEN sounds good to me; and only 5 places that call fdopen, so you might as well fold it into your next spin of this patch. -- 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