summaryrefslogtreecommitdiffstats
path: root/hl
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2015-10-22 04:49:49 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2015-10-22 04:49:49 (GMT)
commit66c1a254f0f561c290b90917ef191b25cdc9d8dd (patch)
tree81b546ad177e45ffca0f266a03a95d01c8033a47 /hl
parent0caf00455f00fe28af7947970dd3b9a2462f3f2d (diff)
downloadhdf5-66c1a254f0f561c290b90917ef191b25cdc9d8dd.zip
hdf5-66c1a254f0f561c290b90917ef191b25cdc9d8dd.tar.gz
hdf5-66c1a254f0f561c290b90917ef191b25cdc9d8dd.tar.bz2
[svn-r28179] h5watch can now open VDS files, though it will not detect changes
until the source files are closed. Tested on: Ubuntu 15.04 (Linux 3.19 x86_64) gcc 4.9.2 serial only
Diffstat (limited to 'hl')
-rw-r--r--hl/tools/h5watch/h5watch.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/hl/tools/h5watch/h5watch.c b/hl/tools/h5watch/h5watch.c
index 7bb86a2..ea37dae 100644
--- a/hl/tools/h5watch/h5watch.c
+++ b/hl/tools/h5watch/h5watch.c
@@ -524,6 +524,7 @@ check_dataset(hid_t fid, char *dsetname)
hbool_t unlim_max_dims = FALSE; /* whether dataset has unlimited or max. dimension setting */
void *edata;
H5E_auto2_t func;
+ H5D_layout_t layout;
herr_t ret_value = SUCCEED; /* Return value */
/* Disable error reporting */
@@ -539,16 +540,21 @@ check_dataset(hid_t fid, char *dsetname)
/* Get dataset's creation property list */
if((dcp = H5Dget_create_plist(did)) < 0) {
- error_msg("unable to get dataset's creation property list\"%s\"\n", dsetname);
- ret_value = FAIL;
- goto done;
+ error_msg("unable to get dataset's creation property list \"%s\"\n", dsetname);
+ ret_value = FAIL;
+ goto done;
}
- /* Query dataset's layout; the layout should be chunked */
- if(H5Pget_layout(dcp) != H5D_CHUNKED) {
- error_msg("\"%s\" should be a chunked dataset\n", dsetname);
- ret_value = FAIL;
- goto done;
+ /* Query dataset's layout; the layout should be chunked or virtual */
+ if((layout = H5Pget_layout(dcp)) < 0) {
+ error_msg("unable to get dataset layout \"%s\"\n", dsetname);
+ ret_value = FAIL;
+ goto done;
+ }
+ if(layout != H5D_CHUNKED && layout != H5D_VIRTUAL) {
+ error_msg("\"%s\" should be a chunked or virtual dataset\n", dsetname);
+ ret_value = FAIL;
+ goto done;
}
HDmemset(cur_dims, 0, sizeof cur_dims);