summaryrefslogtreecommitdiffstats
path: root/test/links.c
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2009-01-11 17:24:48 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2009-01-11 17:24:48 (GMT)
commit2a23b4b1769d522bed5720727beb8e981dcfa9b8 (patch)
tree7ae2570ab360a58c48fb54853dacd7784d171ad0 /test/links.c
parent5c204221e11199461a9fb189d4d903d24e97c251 (diff)
downloadhdf5-2a23b4b1769d522bed5720727beb8e981dcfa9b8.zip
hdf5-2a23b4b1769d522bed5720727beb8e981dcfa9b8.tar.gz
hdf5-2a23b4b1769d522bed5720727beb8e981dcfa9b8.tar.bz2
[svn-r16297]
Disable more file drivers incompatible with family file driver in external_set_elink_cb in links.c. Tested: jam check-vfd
Diffstat (limited to 'test/links.c')
-rw-r--r--test/links.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/test/links.c b/test/links.c
index 8014e1c..acbe946 100644
--- a/test/links.c
+++ b/test/links.c
@@ -4121,7 +4121,7 @@ external_set_elink_cb_cb(const char *parent_file, const char *parent_group,
static int
external_set_elink_cb(hid_t fapl, hbool_t new_format)
{
- hid_t file1, file2, group, gapl, fam_fapl, ret_fapl;
+ hid_t file1, file2, group, gapl, fam_fapl, ret_fapl, base_driver;
set_elink_cb_t op_data,
*op_data_p;
H5L_elink_traverse_t cb;
@@ -4138,7 +4138,12 @@ external_set_elink_cb(hid_t fapl, hbool_t new_format)
op_data.parent_file = filename1;
op_data.target_file = filename2;
/* Core file driver has issues when used as the member file driver for a family file */
- op_data.base_fapl = H5Pget_driver(fapl) == H5FD_CORE ? H5P_DEFAULT : fapl;
+ /* Family file driver cannot be used with family or multi drivers for member files */
+ /* Also disable parellel member drivers, because IS_H5FD_MPI whould report FALSE, causing problems */
+ base_driver = H5Pget_driver(fapl);
+ op_data.base_fapl = (base_driver == H5FD_FAMILY || base_driver == H5FD_MULTI
+ || base_driver == H5FD_MPIO || base_driver == H5FD_MPIPOSIX
+ || base_driver == H5FD_CORE) ? H5P_DEFAULT : fapl;
op_data.fam_size = ELINK_CB_FAM_SIZE;
op_data.code = 0;