diff options
Diffstat (limited to 'src/H5FDlog.c')
-rw-r--r-- | src/H5FDlog.c | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/H5FDlog.c b/src/H5FDlog.c index a9ba785..4c37651 100644 --- a/src/H5FDlog.c +++ b/src/H5FDlog.c @@ -105,6 +105,35 @@ typedef struct H5FD_log_t { } H5FD_log_t; +/* + * This driver supports systems that have the lseek64() function by defining + * some macros here so we don't have to have conditional compilations later + * throughout the code. + * + * file_offset_t: The datatype for file offsets, the second argument of + * the lseek() or lseek64() call. + * + * file_seek: The function which adjusts the current file position, + * either lseek() or lseek64(). + */ +/* adding for windows NT file system support. */ +/* pvn: added __MWERKS__ support. */ + +#ifdef H5_HAVE_LSEEK64 +# define file_offset_t off64_t +# define file_seek lseek64 +#elif defined (WIN32) +# ifdef __MWERKS__ +# define file_offset_t off_t +# define file_seek lseek +# else /*MSVC*/ +# define file_offset_t __int64 +# define file_seek _lseeki64 +# endif +#else +# define file_offset_t off_t +# define file_seek lseek +#endif /* @@ -957,7 +986,7 @@ H5FD_log_write(H5FD_t *_file, H5FD_mem_t UNUSED type, hid_t UNUSED dxpl_id, hadd while (size>0) { do { assert(size==(hsize_t)((size_t)size)); /*check for overflow*/ - nbytes = HDwrite(file->fd, (void*)buf, (size_t)size); + nbytes = HDwrite(file->fd, buf, (size_t)size); } while (-1==nbytes && EINTR==errno); if (-1==nbytes) { /* error */ |