summaryrefslogtreecommitdiffstats
path: root/src/H5version.h
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2009-04-20 19:17:59 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2009-04-20 19:17:59 (GMT)
commit233fa9bee73001369d76c0d69626043415beb4e5 (patch)
treee353b6cdaf283a4948df71d3074f17cc8b1e8f66 /src/H5version.h
parent7b47b79f2dd750810944a8adbb07a0da8b9a8c64 (diff)
downloadhdf5-233fa9bee73001369d76c0d69626043415beb4e5.zip
hdf5-233fa9bee73001369d76c0d69626043415beb4e5.tar.gz
hdf5-233fa9bee73001369d76c0d69626043415beb4e5.tar.bz2
[svn-r16808] Purpose: Fix bug 1533
Description: Previously, there was no versioning for H5Z_class_t. This prevented applications written for 1.6 using custom filters from being able to use the 1.8 library. There is now an H5Z_class1_t and H5Z_class2_t to enable compatibility. H5Zregister is *not* versioned, it determines which version of the struct has been passed in by the value of the first field (id or version, both are ints). Tested: jam, linew, smirom (h5committest), jam (--with-default-api-version=v16)
Diffstat (limited to 'src/H5version.h')
-rw-r--r--src/H5version.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/H5version.h b/src/H5version.h
index fd9e780..58de2ab 100644
--- a/src/H5version.h
+++ b/src/H5version.h
@@ -134,6 +134,10 @@
#define H5E_auto_t_vers 1
#endif /* !defined(H5E_auto_t_vers) */
+#if !defined(H5Z_class_t_vers)
+#define H5Z_class_t_vers 1
+#endif /* !defined(H5Z_class_t_vers) */
+
#endif /* H5_USE_16_API */
@@ -399,5 +403,17 @@
#error "H5E_auto_t_vers set to invalid value"
#endif /* H5E_auto_t_vers */
+
+#if !defined(H5Z_class_t_vers) || H5Z_class_t_vers == 2
+#ifndef H5Z_class_t_vers
+#define H5Z_class_t_vers 2
+#endif /* H5Z_class_t_vers */
+#define H5Z_class_t H5Z_class2_t
+#elif H5Z_class_t_vers == 1
+#define H5Z_class_t H5Z_class1_t
+#else /* H5Z_class_t_vers */
+#error "H5Z_class_t_vers set to invalid value"
+#endif /* H5Z_class_t_vers */
+
#endif /* H5version_H */