On Tue, Jun 14, 2011 at 09:05:55AM -0600, Eric Blake wrote:
On 06/14/2011 08:58 AM, Daniel P. Berrange wrote:
> Most of the safezero() implementations return -1 on error,
> setting errno. The safezero() impl using posix_fallocate()
> though returned a positive errno value on error (due to
> the unusual API contract of posix_fallocate() compared to
> most syscall APIs).
>
> * src/util/util.c: Ensure safezero() returns -1 and sets
> errno on error.
> * src/storage/storage_backend.c: Change safezero != 0 to
> < 0 for detecting errors
> ---
> src/storage/storage_backend.c | 4 ++--
> src/util/util.c | 6 +++++-
> 2 files changed, 7 insertions(+), 3 deletions(-)
ACK. How'd you spot this?
I was calling it in some other code I have, and wondering
why nothing happened to the file on disk. It turns out I
was passing an invalid file descriptor, and I never knew
because it was not correctly reporting the errors.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|