diff --git a/src/dump.c b/src/dump.c index 7c3657f..1931c99 100644 --- a/src/dump.c +++ b/src/dump.c @@ -203,7 +203,7 @@ int check_badblocks(char *mtddev) } else { char readbuf[2048]; // XXX hardcoded like mtd-utils?? ugly! // dummy -- should be removed - if (pread(fd, readbuf, meminfo.writesize, i) != meminfo.writesize) { + if (pread(fd, readbuf, meminfo.writesize, i) != (ssize_t)meminfo.writesize) { perror("pread"); goto closeall; } diff --git a/src/fiasco.c b/src/fiasco.c index d878cd0..b2538f7 100644 --- a/src/fiasco.c +++ b/src/fiasco.c @@ -38,7 +38,7 @@ #define FIASCO_WRITE_ERROR(file, fd, ...) do { ERROR_INFO_STR(file, __VA_ARGS__); if ( fd >= 0 ) close(fd); return -1; } while (0) #define READ_OR_FAIL(fiasco, buf, size) do { if ( read(fiasco->fd, buf, size) != size ) { FIASCO_READ_ERROR(fiasco, "Cannot read %d bytes", size); } } while (0) #define READ_OR_RETURN(fiasco, buf, size) do { if ( read(fiasco->fd, buf, size) != size ) return fiasco; } while (0) -#define WRITE_OR_FAIL(file, fd, buf, size) do { if ( ! simulate ) { if ( write(fd, buf, size) != size ) { FIASCO_WRITE_ERROR(file, fd, "Cannot write %d bytes", size); } } } while (0) +#define WRITE_OR_FAIL(file, fd, buf, size) do { if ( ! simulate ) { if ( write(fd, buf, size) != (ssize_t)size ) { FIASCO_WRITE_ERROR(file, fd, "Cannot write %d bytes", size); } } } while (0) struct fiasco * fiasco_alloc_empty(void) { diff --git a/src/image.c b/src/image.c index cfccb49..f8e9c93 100644 --- a/src/image.c +++ b/src/image.c @@ -320,7 +320,7 @@ void image_free(struct image * image) { } -void image_seek(struct image * image, off_t whence) { +void image_seek(struct image * image, size_t whence) { if ( whence > image->size ) return; @@ -339,7 +339,7 @@ void image_seek(struct image * image, off_t whence) { size_t image_read(struct image * image, void * buf, size_t count) { - off_t cur; + size_t cur; ssize_t ret; size_t new_count = 0; size_t ret_count = 0; diff --git a/src/image.h b/src/image.h index 648a090..709fef7 100644 --- a/src/image.h +++ b/src/image.h @@ -51,9 +51,9 @@ struct image { int fd; int is_shared_fd; uint32_t align; - off_t offset; - off_t cur; - off_t acur; + size_t offset; + size_t cur; + size_t acur; char * orig_filename; }; @@ -66,7 +66,7 @@ struct image_list { struct image * image_alloc_from_file(const char * file, const char * type, const char * device, const char * hwrevs, const char * version, const char * layout); struct image * image_alloc_from_shared_fd(int fd, size_t size, size_t offset, uint16_t hash, const char * type, const char * device, const char * hwrevs, const char * version, const char * layout); void image_free(struct image * image); -void image_seek(struct image * image, off_t whence); +void image_seek(struct image * image, size_t whence); size_t image_read(struct image * image, void * buf, size_t count); void image_print_info(struct image * image); void image_list_add(struct image_list ** list, struct image * image);