diff options
-rw-r--r-- | release_docs/RELEASE.txt | 2 | ||||
-rw-r--r-- | tools/h5ls/h5ls.c | 21 |
2 files changed, 10 insertions, 13 deletions
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 1e1518e..38ed08d 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -386,6 +386,8 @@ Bug Fixes since HDF5-1.6.0 release Tools ----- + - Fixed space utilization reported in h5ls to correct error in formula + used. QAK - 2004/10/22 - Fixed h5redeploy which sometimes complain too many argument for the test command. (The complain did not hinder the h5redploy to proceed correctly.) AKC - 2003/11/03 diff --git a/tools/h5ls/h5ls.c b/tools/h5ls/h5ls.c index 5d1c6b2..1514ca6 100644 --- a/tools/h5ls/h5ls.c +++ b/tools/h5ls/h5ls.c @@ -1534,24 +1534,19 @@ dataset_list2(hid_t dset, const char UNUSED *name) } /* Print total raw storage size */ - used = H5Sget_simple_extent_npoints(space) * H5Tget_size(type); - total = H5Dget_storage_size(dset); + total = H5Sget_simple_extent_npoints(space) * H5Tget_size(type); + used = H5Dget_storage_size(dset); printf(" %-10s ", "Storage:"); printf("%lu logical byte%s, %lu allocated byte%s", - (unsigned long)used, 1==used?"":"s", - (unsigned long)total, 1==total?"":"s"); - if (total>0) { + (unsigned long)total, 1==total?"":"s", + (unsigned long)used, 1==used?"":"s"); + if (used>0) { #ifdef WIN32 - hsize_t mask = (hsize_t)1 << (8*sizeof(hsize_t)-1); - if ((used & mask) || (total & mask)) { - total = 0; /*prevent utilization printing*/ - } else { - utilization = (hssize_t)used*100.0 /(hssize_t)total; - } + utilization = (hssize_t)used*100.0 /(hssize_t)total; #else - utilization = (used*100.0)/total; + utilization = (used*100.0)/total; #endif - printf(", %1.2f%% utilization", utilization/*(used*100.0)/total*/); + printf(", %1.2f%% utilization", utilization); } putchar('\n'); |