summaryrefslogtreecommitdiffstats
path: root/src/H5private.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2013-02-27 19:22:27 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2013-02-27 19:22:27 (GMT)
commitb2f2370b1f26b8864c70f7ccc8cc023260ca99a0 (patch)
treef9bc7e59d6e48d5de16c21f48b214489d58725b3 /src/H5private.h
parente8fa6193f5ae4713f2ca9ff02965951c9d97016b (diff)
downloadhdf5-b2f2370b1f26b8864c70f7ccc8cc023260ca99a0.zip
hdf5-b2f2370b1f26b8864c70f7ccc8cc023260ca99a0.tar.gz
hdf5-b2f2370b1f26b8864c70f7ccc8cc023260ca99a0.tar.bz2
[svn-r23321] Description:
Merge r23313 from trunk to 1.8 branch: Bring changes from Coverity branch to the trunk: r20612: Changed string functions to versions with string length to fix coverity issues 922, 942 and 943. r20614: Use HDsnprintf. --gh r20675: Fix for coverity #1714 due to the fix for #810. Use HDfree() instead of H5MM_xfree(). r20678: Repaired coverity issue #598 -- failure to check return value from a call to fstat(), or to tidy up in the event of failure. r20679: Use HDstrncpy. --gh r20681: Use HDstrncat and HDstrncpy. --gh Tested on: Mac OSX/64 10.8.2 (amazon) w/debug, C++ & FORTRAN (too minor to require h5committest)
Diffstat (limited to 'src/H5private.h')
-rw-r--r--src/H5private.h55
1 files changed, 28 insertions, 27 deletions
diff --git a/src/H5private.h b/src/H5private.h
index 4501dd8..92e1abd 100644
--- a/src/H5private.h
+++ b/src/H5private.h
@@ -1467,19 +1467,20 @@ extern char *strdup(const char *s);
#if defined(H5_HAVE_WINDOW_PATH)
/* directory delimiter for Windows: slash and backslash are acceptable on Windows */
-#define DIR_SLASH_SEPC '/'
-#define DIR_SEPC '\\'
-#define DIR_SEPS "\\"
-#define CHECK_DELIMITER(SS) ((SS == DIR_SEPC)||(SS == DIR_SLASH_SEPC))
-#define CHECK_ABSOLUTE(NAME) ((isalpha(NAME[0])) && (NAME[1] == ':') && (CHECK_DELIMITER(NAME[2])))
-#define CHECK_ABS_DRIVE(NAME) ((isalpha(NAME[0])) && (NAME[1] == ':'))
-#define CHECK_ABS_PATH(NAME) (CHECK_DELIMITER(NAME[0]))
-
-#define GET_LAST_DELIMITER(NAME, ptr) { \
+#define H5_DIR_SLASH_SEPC '/'
+#define H5_DIR_SEPC '\\'
+#define H5_DIR_SEPS "\\"
+#define H5_CHECK_DELIMITER(SS) ((SS == H5_DIR_SEPC) || (SS == H5_DIR_SLASH_SEPC))
+#define H5_CHECK_ABSOLUTE(NAME) ((HDisalpha(NAME[0])) && (NAME[1] == ':') && (H5_CHECK_DELIMITER(NAME[2])))
+#define H5_CHECK_ABS_DRIVE(NAME) ((HDisalpha(NAME[0])) && (NAME[1] == ':'))
+#define H5_CHECK_ABS_PATH(NAME) (H5_CHECK_DELIMITER(NAME[0]))
+
+#define H5_GET_LAST_DELIMITER(NAME, ptr) { \
char *slash, *backslash; \
- slash = strrchr(NAME, DIR_SLASH_SEPC); \
- backslash = strrchr(NAME, DIR_SEPC); \
- if (backslash > slash) \
+ \
+ slash = HDstrrchr(NAME, H5_DIR_SLASH_SEPC); \
+ backslash = HDstrrchr(NAME, H5_DIR_SEPC); \
+ if(backslash > slash) \
(ptr = backslash); \
else \
(ptr = slash); \
@@ -1489,27 +1490,27 @@ 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 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, DIR_SEPC);
+#define H5_DIR_SEPC ']'
+#define H5_DIR_SEPS "]"
+#define H5_CHECK_DELIMITER(SS) (SS == H5_DIR_SEPC)
+#define H5_CHECK_ABSOLUTE(NAME) (HDstrrchr(NAME, ':') && HDstrrchr(NAME, '['))
+#define H5_CHECK_ABS_DRIVE(NAME) (0)
+#define H5_CHECK_ABS_PATH(NAME) (0)
+#define H5_GET_LAST_DELIMITER(NAME, ptr) ptr = HDstrrchr(NAME, H5_DIR_SEPC);
#else
-#define DIR_SEPC '/'
-#define DIR_SEPS "/"
-#define CHECK_DELIMITER(SS) (SS == DIR_SEPC)
-#define CHECK_ABSOLUTE(NAME) (CHECK_DELIMITER(*NAME))
-#define CHECK_ABS_DRIVE(NAME) (0)
-#define CHECK_ABS_PATH(NAME) (0)
-#define GET_LAST_DELIMITER(NAME, ptr) ptr = strrchr(NAME, DIR_SEPC);
+#define H5_DIR_SEPC '/'
+#define H5_DIR_SEPS "/"
+#define H5_CHECK_DELIMITER(SS) (SS == H5_DIR_SEPC)
+#define H5_CHECK_ABSOLUTE(NAME) (H5_CHECK_DELIMITER(*NAME))
+#define H5_CHECK_ABS_DRIVE(NAME) (0)
+#define H5_CHECK_ABS_PATH(NAME) (0)
+#define H5_GET_LAST_DELIMITER(NAME, ptr) ptr = HDstrrchr(NAME, H5_DIR_SEPC);
#endif
-#define COLON_SEPC ':'
+#define H5_COLON_SEPC ':'
/* Use FUNC to safely handle variations of C99 __func__ keyword handling */