summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c++/src/H5File.cpp8
-rw-r--r--c++/src/H5File.h2
-rw-r--r--c++/test/tfile.cpp5
3 files changed, 9 insertions, 6 deletions
diff --git a/c++/src/H5File.cpp b/c++/src/H5File.cpp
index a45f91e..a39d93f 100644
--- a/c++/src/H5File.cpp
+++ b/c++/src/H5File.cpp
@@ -492,12 +492,14 @@ hid_t H5File::getLocId() const
//--------------------------------------------------------------------------
haddr_t H5File::getFileSize(void) const
{
- haddr_t file_size = H5Fget_filesize(id);
- if( file_size < 0 )
+ herr_t ret;
+
+ ret = H5Fget_filesize(id, size);
+ if( ret < 0 )
{
throw FileIException("H5File::getFileSize", "H5Fget_filesize failed");
}
- return(file_size);
+ return ret;
}
//--------------------------------------------------------------------------
diff --git a/c++/src/H5File.h b/c++/src/H5File.h
index bb20643..d688e6f 100644
--- a/c++/src/H5File.h
+++ b/c++/src/H5File.h
@@ -73,7 +73,7 @@ class H5_DLLCPP H5File : public IdComponent, public CommonFG {
DataSpace getRegion(void *ref, H5R_type_t ref_type = H5R_DATASET_REGION) const;
// Retrieves the file size of an opened file.
- haddr_t getFileSize() const;
+ herr_t getFileSize(hsize_t *size) const;
// Reopens this file
void reopen();
diff --git a/c++/test/tfile.cpp b/c++/test/tfile.cpp
index 9dc6127..1ad2680 100644
--- a/c++/test/tfile.cpp
+++ b/c++/test/tfile.cpp
@@ -337,8 +337,9 @@ test_file_size(void)
H5File fid( FILE4, H5F_ACC_TRUNC, FileCreatPropList::DEFAULT, fapl);
// Get file size
- haddr_t file_size = fid.getFileSize();
- CHECK(file_size, FAIL, "H5File::getFileSize");
+ hsize_t file_size;
+ herr_t ret = fid.getFileSize(&file_size);
+ CHECK(ret, FAIL, "H5File::getFileSize");
// Check if file size is reasonable. It's supposed to be 2KB now.
if(file_size<1*KB || file_size>4*KB)