A size_t should be printed using %zu (unsigned size_t) rather than %d. This
fixes the following warning on my system:
gcc -O2 -Werror -Wall -Iinclude -Isrc -I../../include src/ubiformat.c -c -o ubiformat.o
cc1: warnings being treated as errors
src/ubiformat.c: In function ‘read_all’:
src/ubiformat.c:345: error: format ‘%d’ expects type ‘int’, but argument 3 has type ‘size_t’
src/ubiformat.c:352: error: format ‘%d’ expects type ‘int’, but argument 3 has type ‘size_t’
make: *** [ubiformat.o] Error 1
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
while (len > 0) {
ssize_t l = read(fd, buf, len);
if (l == 0)
- return errmsg("eof reached; %d bytes remaining", len);
+ return errmsg("eof reached; %zu bytes remaining", len);
else if (l > 0) {
buf += l;
len -= l;
} else if (errno == EINTR || errno == EAGAIN)
continue;
else
- return sys_errmsg("reading failed; %d bytes remaining", len);
+ return sys_errmsg("reading failed; %zu bytes remaining", len);
}
return 0;