From 2ae1a93354a13c277963c63d014bc12e2035ebaf Mon Sep 17 00:00:00 2001 From: Raymond Lu Date: Fri, 10 Dec 2004 16:23:32 -0500 Subject: [svn-r9652] Purpose: Bug fix. Description: In file H5FDsec2.c and H5FDlog.c, there's statements like H5_ASSIGN_OVERFLOW(file->eof,sb.st_size,off_t,haddr_t); It assumes sb.st_size from h5_stat_t is of type off_t. But on Windows, it has type __int64. So the H5_ASSIGN_OVERFLOW statement may cause problem. Instead of trying to do switch between Windows and other systems in H5FDsec2.c and H5FDlog.c, define a substituting type in H5private.h to fix the problem. On Windows, this type is __int64; on other systems, it is off_t. Platforms tested: h5committest --- src/H5FDsec2.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/H5FDsec2.c b/src/H5FDsec2.c index 44d3912..36362fd 100644 --- a/src/H5FDsec2.c +++ b/src/H5FDsec2.c @@ -376,7 +376,8 @@ H5FD_sec2_open(const char *name, unsigned flags, hid_t UNUSED fapl_id, HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "unable to allocate file struct") file->fd = fd; - H5_ASSIGN_OVERFLOW(file->eof,sb.st_size,off_t,haddr_t); + + H5_ASSIGN_OVERFLOW(file->eof,sb.st_size,h5_stat_size_t,haddr_t); file->pos = HADDR_UNDEF; file->op = OP_UNKNOWN; #ifdef WIN32 -- cgit v0.12