Files
git/compat/pread.c
Dmitry Kakurin 89697a4c15 Issue 20: Fix all build warnings
Fixed all warnings. Code compiles cleanly now.

Full test pass: OK

Signed-off-by: Dmitry Kakurin <Dmitry.Kakurin@gmail.com>
2007-08-12 05:30:07 -07:00

21 lines
485 B
C

#include "../git-compat-util.h"
int read_in_full(int fd, void *buf, size_t count);
ssize_t git_pread(int fd, void *buf, size_t count, off_t offset)
{
off_t current_offset;
ssize_t rc;
current_offset = lseek(fd, 0, SEEK_CUR);
if (lseek(fd, offset, SEEK_SET) < 0)
return -1;
rc = read_in_full(fd, buf, count);
if (current_offset != lseek(fd, current_offset, SEEK_SET))
return -1;
return rc;
}