Added support for BeOS; Handle.cpp uses read_pos() now, and will define
that to pread() if read_pos() doesn't exist. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4621 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -13,6 +13,12 @@
|
||||
#include <unistd.h>
|
||||
|
||||
|
||||
#ifndef HAVE_READ_POS
|
||||
# define read_pos(fd, pos, buffer, size) pread(fd, buffer, size, pos)
|
||||
# define write_pos(fd, pos, buffer, size) pwrite(fd, buffer, size, pos)
|
||||
#endif
|
||||
|
||||
|
||||
Handle::Handle(int handle, bool takeOwnership)
|
||||
:
|
||||
fHandle(handle),
|
||||
@@ -49,14 +55,14 @@ Handle::SetHandle(int handle, bool takeOwnership)
|
||||
ssize_t
|
||||
Handle::ReadAt(void *cookie, off_t pos, void *buffer, size_t bufferSize)
|
||||
{
|
||||
return pread(fHandle, buffer, bufferSize, pos);
|
||||
return read_pos(fHandle, pos, buffer, bufferSize);
|
||||
}
|
||||
|
||||
|
||||
ssize_t
|
||||
Handle::WriteAt(void *cookie, off_t pos, const void *buffer, size_t bufferSize)
|
||||
{
|
||||
return pwrite(fHandle, buffer, bufferSize, pos);
|
||||
return write_pos(fHandle, pos, buffer, bufferSize);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -23,7 +23,8 @@ ObjectDefines
|
||||
if $(OS) = "LINUX" {
|
||||
# SubDirC++Flags -include /usr/include/stdio.h ;
|
||||
} else {
|
||||
SubDirC++Flags -include /boot/develop/headers/posix/stdio.h ;
|
||||
# SubDirC++Flags -include /boot/develop/headers/posix/stdio.h ;
|
||||
SubDirC++Flags -DHAVE_READ_POS=1 ;
|
||||
}
|
||||
|
||||
SimpleTest BootLoaderTest :
|
||||
|
||||
Reference in New Issue
Block a user