summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Lu <songyulu@hdfgroup.org>2011-05-09 20:31:43 (GMT)
committerRaymond Lu <songyulu@hdfgroup.org>2011-05-09 20:31:43 (GMT)
commit4e5f011c34295706e606e1e235be2e58f6b1330b (patch)
tree13e6e1148a38cd2fcfe683b586b1b04a68920a2e
parenta4c349dececd313612f2bfbfb964cbf0eab92827 (diff)
downloadhdf5-4e5f011c34295706e606e1e235be2e58f6b1330b.zip
hdf5-4e5f011c34295706e606e1e235be2e58f6b1330b.tar.gz
hdf5-4e5f011c34295706e606e1e235be2e58f6b1330b.tar.bz2
[svn-r20778] I changed the macro definition of DIR_SEPC and DIR_SEPS to ']' for OpenVMS in H5private.h. Strictly speaking, it isn't
the directory seperator. But it can simplify the code and make the H5L_build_name function cleaner. Tested on jam because the change only affects VMS.
-rw-r--r--src/H5Fefc.c2
-rw-r--r--src/H5Lexternal.c3
-rw-r--r--src/H5private.h10
3 files changed, 7 insertions, 8 deletions
diff --git a/src/H5Fefc.c b/src/H5Fefc.c
index eebf143..a0c204e 100644
--- a/src/H5Fefc.c
+++ b/src/H5Fefc.c
@@ -147,7 +147,7 @@ H5F_efc_open(H5F_t *parent, const char *name, unsigned flags, hid_t fcpl_id,
H5F_efc_t *efc = NULL; /* External file cache for parent file */
H5F_efc_ent_t *ent = NULL; /* Entry for target file in efc */
hbool_t open_file = FALSE; /* Whether ent->file needs to be closed in case of error */
- H5F_t *ret_value; /* Return value */
+ H5F_t *ret_value = NULL; /* Return value */
FUNC_ENTER_NOAPI_NOINIT(H5F_efc_open)
diff --git a/src/H5Lexternal.c b/src/H5Lexternal.c
index d3ae271..01b405a 100644
--- a/src/H5Lexternal.c
+++ b/src/H5Lexternal.c
@@ -146,10 +146,9 @@ H5L_build_name(char *prefix, char *file_name, char **full_name/*out*/)
/* Copy the prefix into the buffer */
HDstrcpy(*full_name, prefix);
-#ifndef H5_VMS
+
if (!CHECK_DELIMITER(prefix[prefix_len-1]))
HDstrcat(*full_name, DIR_SEPS);
-#endif
/* Add the external link's filename to the prefix supplied */
HDstrcat(*full_name, file_name);
diff --git a/src/H5private.h b/src/H5private.h
index 7950117..9978cd1 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -1475,13 +1475,13 @@ extern char *strdup(const char *s);
/* OpenVMS pathname: <disk name>$<partition>:[path]<file name>
* i.g. SYS$SYSUSERS:[LU.HDF5.SRC]H5system.c */
-#define DIR_SEPC '.'
-#define DIR_SEPS "."
+#define DIR_SEPC ']'
+#define DIR_SEPS "]"
#define CHECK_DELIMITER(SS) (SS == DIR_SEPC)
#define CHECK_ABSOLUTE(NAME) (strrchr(NAME, ':') && strrchr(NAME, '['))
-#define CHECK_ABS_DRIVE(NAME) (0)
-#define CHECK_ABS_PATH(NAME) (0)
-#define GET_LAST_DELIMITER(NAME, ptr) ptr = strrchr(NAME, ']');
+#define CHECK_ABS_DRIVE(NAME) (0)
+#define CHECK_ABS_PATH(NAME) (0)
+#define GET_LAST_DELIMITER(NAME, ptr) ptr = strrchr(NAME, DIR_SEPC);
#else