Use buf_is_zero in common/util.cc
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
radosacl_LDADD = librados.la $(PTHREAD_LIBS) -lm $(CRYPTO_LIBS) $(EXTRALIBS)
bin_DEBUGPROGRAMS += scratchtool scratchtoolpp radosacl
-rbd_SOURCES = rbd.cc common/fiemap.cc common/secret.c common/TextTable.cc
+rbd_SOURCES = rbd.cc common/fiemap.cc common/secret.c common/TextTable.cc common/util.cc
rbd_CXXFLAGS = ${AM_CXXFLAGS}
rbd_LDADD = libglobal.la librbd.la librados.la $(PTHREAD_LIBS) -lm -lkeyutils $(CRYPTO_LIBS) $(EXTRALIBS)
if LINUX
#include "include/rbd_types.h"
#include "common/TextTable.h"
+#include "include/util.h"
#if defined(__linux__)
#include <linux/fs.h>
ret = write(fd, buf, len);
}
} else { // not stdout
- if (!buf) /* a hole */
+ if (!buf || buf_is_zero(buf, len)) {
+ /* a hole */
return 0;
+ }
ret = lseek64(fd, ofs, SEEK_SET);
if (ret < 0)