summaryrefslogtreecommitdiffstats
path: root/hl/test
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2012-03-21 15:10:17 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2012-03-21 15:10:17 (GMT)
commiteb89d7b53ab95623ab454186a602e1cafc7391f0 (patch)
treeceafe458b3011e38853e765352d3c7e59bbecce1 /hl/test
parent3e468e6ff65d540a439e99ea568a6bff7add7cea (diff)
downloadhdf5-eb89d7b53ab95623ab454186a602e1cafc7391f0.zip
hdf5-eb89d7b53ab95623ab454186a602e1cafc7391f0.tar.gz
hdf5-eb89d7b53ab95623ab454186a602e1cafc7391f0.tar.bz2
[svn-r22105] Description:
Bring r20557:22085 from trunk to this branch, also fixing some other issues/failures in the branch simultaneously. The h5repack tests are still failing, but Neil will be checking into those, so the branch can be fully functional again. Tested on: Mac OSX/64 10.7.3 (amazon) w/debug
Diffstat (limited to 'hl/test')
-rw-r--r--hl/test/CMakeLists.txt4
-rw-r--r--hl/test/Makefile.in3
-rw-r--r--hl/test/test_ds.c1061
-rw-r--r--hl/test/test_image.c54
-rw-r--r--hl/test/test_lite.c609
-rw-r--r--hl/test/test_packet.c14
-rw-r--r--hl/test/test_table.c56
7 files changed, 1245 insertions, 556 deletions
diff --git a/hl/test/CMakeLists.txt b/hl/test/CMakeLists.txt
index 3104008..89baac4 100644
--- a/hl/test/CMakeLists.txt
+++ b/hl/test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 2.8)
+cmake_minimum_required (VERSION 2.8.6)
PROJECT (HDF5_HL_TEST)
# --------------------------------------------------------------------
# Notes: When creating unit test executables they should be prefixed
@@ -28,6 +28,7 @@ MACRO (HL_ADD_TEST hl_name files)
${HDF5_LIB_TARGET}
${HDF5_TEST_LIB_TARGET}
)
+ SET_TARGET_PROPERTIES (hl_${hl_name} PROPERTIES FOLDER test/hl)
ADD_TEST (NAME hl_${hl_name} COMMAND $<TARGET_FILE:hl_${hl_name}>)
@@ -92,4 +93,5 @@ IF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
${HDF5_LIB_TARGET}
${HDF5_TEST_LIB_TARGET}
)
+ SET_TARGET_PROPERTIES (hl_gen_test_ds PROPERTIES FOLDER test/hl/gen)
ENDIF (HDF5_BUILD_GENERATORS AND NOT BUILD_SHARED_LIBS)
diff --git a/hl/test/Makefile.in b/hl/test/Makefile.in
index 54e4b12..9a95e16 100644
--- a/hl/test/Makefile.in
+++ b/hl/test/Makefile.in
@@ -224,6 +224,7 @@ F9XMODEXT = @F9XMODEXT@
F9XMODFLAG = @F9XMODFLAG@
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
FC = @FC@
+FC2003 = @FC2003@
FCFLAGS = @FCFLAGS@
FCFLAGS_f90 = @FCFLAGS_f90@
FCLIBS = @FCLIBS@
@@ -244,10 +245,12 @@ H5_LONE_COLON = @H5_LONE_COLON@
H5_VERSION = @H5_VERSION@
HADDR_T = @HADDR_T@
HAVE_DMALLOC = @HAVE_DMALLOC@
+HAVE_FORTRAN_2003 = @HAVE_FORTRAN_2003@
HDF5_HL = @HDF5_HL@
HDF5_INTERFACES = @HDF5_INTERFACES@
HDF_CXX = @HDF_CXX@
HDF_FORTRAN = @HDF_FORTRAN@
+HDF_FORTRAN2003 = @HDF_FORTRAN2003@
HID_T = @HID_T@
HL = @HL@
HL_FOR = @HL_FOR@
diff --git a/hl/test/test_ds.c b/hl/test/test_ds.c
index 53870f5..e290bbb 100644
--- a/hl/test/test_ds.c
+++ b/hl/test/test_ds.c
@@ -81,8 +81,9 @@ static int test_types(void);
static int test_iterators(void);
static int test_data(void);
static int read_data( const char* fname, int ndims, hsize_t *dims, float **buf );
+static int test_attach_detach(void);
-
+#define RANK1 1
#define RANK 2
#define DIM_DATA 12
#define DIM1_SIZE 3
@@ -136,6 +137,7 @@ static int read_data( const char* fname, int ndims, hsize_t *dims, float **buf )
#define FILE5 "test_ds7.h5"
#define FILE6 "test_ds8.h5"
#define FILE7 "test_ds9.h5"
+#define FILE8 "test_ds10.h5"
#define DIMENSION_LIST "DIMENSION_LIST"
#define REFERENCE_LIST "REFERENCE_LIST"
@@ -174,7 +176,7 @@ int main(void)
nerrors += test_foreign_scaleattached(FOREIGN_FILE1) < 0 ? 1 : 0;
nerrors += test_foreign_scaleattached(FOREIGN_FILE2) < 0 ? 1 : 0;
nerrors += test_detachscales() < 0 ? 1 : 0;
-
+ nerrors += test_attach_detach() < 0 ? 1 : 0;
/* the following tests have not been rewritten to match those above */
nerrors += test_simple() < 0 ?1:0;
nerrors += test_errors() < 0 ?1:0;
@@ -217,9 +219,9 @@ static hid_t create_test_file(const char *fileext)
{
char filename[65];
- strcpy(filename, FILENAME);
- strcat(filename, fileext);
- strcat(filename, FILEEXT);
+ HDstrcpy(filename, FILENAME);
+ HDstrcat(filename, fileext);
+ HDstrcat(filename, FILEEXT);
return H5Fcreate(filename, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
}
@@ -227,9 +229,9 @@ static hid_t open_test_file(const char *fileext)
{
char filename[65];
- strcpy(filename, FILENAME);
- strcat(filename, fileext);
- strcat(filename, FILEEXT);
+ HDstrcpy(filename, FILENAME);
+ HDstrcat(filename, fileext);
+ HDstrcat(filename, FILEEXT);
return H5Fopen(filename, H5F_ACC_RDWR, H5P_DEFAULT);
}
@@ -258,8 +260,8 @@ herr_t create_char_dataset(hid_t fid, const char *dsidx, int fulldims)
char s33_wbuf[DIM3_SIZE] = {6,6,6,12,12,12,53,53,53,120,120,120};
char name[32];
- strcpy(name, DATASET_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DATASET_NAME);
+ HDstrcat(name, dsidx);
/* make a dataset */
if(H5LTmake_dataset_char(fid, name, rank, dims, buf) >= 0) {
if(fulldims==0) {
@@ -311,8 +313,8 @@ herr_t create_short_dataset(hid_t fid, const char *dsidx, int fulldims)
short s33_wbuf[DIM3_SIZE] = {6,6,6,12,12,12,53,53,53,140,140,140};
char name[32];
- strcpy(name, DATASET_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DATASET_NAME);
+ HDstrcat(name, dsidx);
/* make a dataset */
if(H5LTmake_dataset_short(fid, name, rank, dims, buf) >= 0) {
@@ -360,8 +362,8 @@ herr_t create_int_dataset(hid_t fid, const char *dsidx, int fulldims)
int s22_wbuf[DIM2_SIZE] = {5,10,50,300};
char name[32];
- strcpy(name, DATASET_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DATASET_NAME);
+ HDstrcat(name, dsidx);
/* make a dataset */
if(H5LTmake_dataset_int(fid, name, rank, dims, buf) >= 0) {
@@ -413,7 +415,7 @@ herr_t create_long_dataset(hid_t fid, const char *dsname, const char *dsidx, int
long s44_wbuf[DIM4_SIZE] = {280,280};
char name[32];
- strcpy(name, dsname);
+ HDstrcpy(name, dsname);
/* make a dataset */
if(H5LTmake_dataset_long(fid, name, rank, dims, buf) >= 0) {
@@ -468,8 +470,8 @@ herr_t create_float_dataset(hid_t fid, const char *dsidx, int fulldims)
float s22_wbuf[DIM2_SIZE] = {5,10,50,300};
char name[32];
- strcpy(name, DATASET_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DATASET_NAME);
+ HDstrcat(name, dsidx);
/* make a dataset */
if(H5LTmake_dataset_float(fid, name, rank, dims, buf) >= 0) {
@@ -503,15 +505,15 @@ herr_t create_DS1_char_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_1_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_11_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_11_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
@@ -528,23 +530,23 @@ herr_t create_DS2_char_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_2_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_21_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_21_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_22_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_22_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
@@ -561,31 +563,31 @@ herr_t create_DS3_char_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_3_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_31_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_31_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_32_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_32_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_33_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_33_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_char(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
@@ -602,15 +604,15 @@ herr_t create_DS1_short_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_1_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_11_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_11_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
@@ -627,24 +629,24 @@ herr_t create_DS2_short_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_2_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the second dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_21_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_21_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_22_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_22_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
@@ -661,32 +663,32 @@ herr_t create_DS3_short_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_3_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_31_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_31_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_32_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_32_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_33_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_33_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_short(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
@@ -703,16 +705,16 @@ herr_t create_DS1_int_datasets(hid_t fid, const char *dsidx, int rankds, hsize_t
{
char name[32];
- strcpy(name, DS_1_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_11_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_11_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
@@ -729,24 +731,24 @@ herr_t create_DS2_int_datasets(hid_t fid, const char *dsidx, int rankds, hsize_t
{
char name[32];
- strcpy(name, DS_2_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the second dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_21_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_21_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_22_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_22_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
@@ -763,32 +765,32 @@ herr_t create_DS3_int_datasets(hid_t fid, const char *dsidx, int rankds, hsize_t
{
char name[32];
- strcpy(name, DS_3_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_31_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_31_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_32_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_32_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_33_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_33_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_int(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
@@ -805,16 +807,16 @@ herr_t create_DS1_long_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_1_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_11_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_11_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
@@ -831,24 +833,24 @@ herr_t create_DS2_long_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_2_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_21_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_21_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_22_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_22_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
@@ -865,32 +867,32 @@ herr_t create_DS3_long_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_3_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_31_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_31_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_32_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_32_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_33_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_33_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
@@ -907,40 +909,40 @@ herr_t create_DS4_long_datasets(hid_t fid, const char *dsidx, int rankds, hsize_
{
char name[32];
- strcpy(name, DS_4_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_4_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_41_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_41_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_42_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_42_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_43_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_43_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
}
if(s4_wbuf!=NULL) {
- strcpy(name, DS_44_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_44_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_long(fid, name, rankds, s_dim, s4_wbuf) < 0)
return FAIL;
@@ -957,16 +959,16 @@ herr_t create_DS1_float_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_1_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_11_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_11_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the first dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
@@ -983,24 +985,24 @@ herr_t create_DS2_float_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_2_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_21_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_21_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_22_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_22_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
@@ -1017,32 +1019,32 @@ herr_t create_DS3_float_datasets(hid_t fid, const char *dsidx, int rankds, hsize
{
char name[32];
- strcpy(name, DS_3_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset for the first dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s_wbuf) < 0)
return FAIL;
if(s1_wbuf!=NULL) {
- strcpy(name, DS_31_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_31_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s1_wbuf) < 0)
return FAIL;
}
if(s2_wbuf!=NULL) {
- strcpy(name, DS_32_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_32_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s2_wbuf) < 0)
return FAIL;
}
if(s3_wbuf!=NULL) {
- strcpy(name, DS_33_NAME);
- strcat(name, dsidx);
+ HDstrcpy(name, DS_33_NAME);
+ HDstrcat(name, dsidx);
/* make a DS dataset with an alternate scale for the second dimension */
if(H5LTmake_dataset_float(fid, name, rankds, s_dim, s3_wbuf) < 0)
return FAIL;
@@ -1125,13 +1127,13 @@ herr_t test_cmp_scalename(hid_t fid, hid_t did, const char *name, const char *sc
if((dsid = H5Dopen2(fid, name, H5P_DEFAULT)) >= 0) {
if(H5DSis_attached(did, dsid, idx) == 1) {
if((name_len=H5DSget_scale_name(dsid,NULL,(size_t)0)) > 0) {
- name_out = (char*)malloc(name_len * sizeof (char));
+ name_out = (char*)HDmalloc(name_len * sizeof (char));
if(name_out != NULL) {
if(H5DSget_scale_name(dsid, name_out, (size_t)name_len) >= 0) {
- if(strcmp(scalename,name_out)==0) {
+ if(HDstrcmp(scalename,name_out)==0) {
ret_value = SUCCEED;
}
- free(name_out);
+ HDfree(name_out);
name_out=NULL;
}
}
@@ -1292,8 +1294,8 @@ static int test_char_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "ac");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "ac");
TESTING2("test_char_attachscales");
@@ -1305,18 +1307,18 @@ static int test_char_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "ac");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "ac");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "ac");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "ac");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "ac");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "ac");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
@@ -1348,8 +1350,8 @@ static int test_short_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "as");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "as");
TESTING2("test_short_attachscales");
@@ -1361,48 +1363,48 @@ static int test_short_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
- strcpy(scalename, DS_31_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_31_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
- strcpy(scalename, DS_32_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_32_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
- strcpy(scalename, DS_33_NAME);
- strcat(scalename, "as");
+ HDstrcpy(scalename, DS_33_NAME);
+ HDstrcat(scalename, "as");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
@@ -1434,8 +1436,8 @@ static int test_int_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "a");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "a");
TESTING2("test_int_attachscales");
@@ -1447,28 +1449,28 @@ static int test_int_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "a");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "a");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "a");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "a");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "a");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "a");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "a");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "a");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "a");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "a");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
@@ -1500,8 +1502,8 @@ static int test_long_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "al");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "al");
TESTING2("test_long_attachscales");
@@ -1513,23 +1515,23 @@ static int test_long_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
- strcpy(scalename, DS_4_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_4_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM3) < 0)
goto out;
@@ -1561,8 +1563,8 @@ static int test_duplicatelong_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "al2");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "al2");
TESTING2("test_duplicatelong_attachscales");
@@ -1574,23 +1576,23 @@ static int test_duplicatelong_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM2) < 0)
goto out;
- strcpy(scalename, DS_4_NAME);
- strcat(scalename, "al");
+ HDstrcpy(scalename, DS_4_NAME);
+ HDstrcat(scalename, "al");
if(test_attach_scale(fid, did, scalename, DIM3) < 0)
goto out;
@@ -1622,8 +1624,8 @@ static int test_float_attachscales(const char *fileext)
hid_t did = -1;
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "af");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "af");
TESTING2("test_float_attachscales");
@@ -1635,28 +1637,28 @@ static int test_float_attachscales(const char *fileext)
goto out;
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "af");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "af");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "af");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "af");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "af");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "af");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "af");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "af");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "af");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "af");
if(test_attach_scale(fid, did, scalename, DIM1) < 0)
goto out;
@@ -1689,8 +1691,8 @@ static int test_numberofscales(const char *fileext)
int nscales; /* number of scales in DIM */
char dsname[32];
char scalename[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "a");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "a");
TESTING2("test_numberofscales");
@@ -1716,8 +1718,8 @@ static int test_numberofscales(const char *fileext)
else
goto out;
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "b");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "b");
/* make a dataset */
if(create_int_dataset(fid, "b", 1) < 0)
@@ -1725,8 +1727,8 @@ static int test_numberofscales(const char *fileext)
/* make a DS dataset for the first dimension */
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "b");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "b");
if(test_attach_scale(fid, did, scalename, DIM0) < 0)
goto out;
@@ -1770,38 +1772,38 @@ static int test_char_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "ac");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "ac");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set char scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "ac");
- strcpy(name, SCALE_1_NAME);
- strcat(name, "ac");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "ac");
+ HDstrcpy(name, SCALE_1_NAME);
+ HDstrcat(name, "ac");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "ac");
- strcpy(name, SCALE_2_NAME);
- strcat(name, "ac");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "ac");
+ HDstrcpy(name, SCALE_2_NAME);
+ HDstrcat(name, "ac");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "ac");
- strcpy(name, SCALE_3_NAME);
- strcat(name, "ac");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "ac");
+ HDstrcpy(name, SCALE_3_NAME);
+ HDstrcat(name, "ac");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
@@ -1836,98 +1838,98 @@ static int test_short_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "as");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "as");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set short scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_1_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_1_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_11_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_11_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_2_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_2_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_21_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_21_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_22_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_22_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_3_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_3_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
- strcpy(scalename, DS_31_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_31_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_31_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_31_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
- strcpy(scalename, DS_32_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_32_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_32_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_32_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
- strcpy(scalename, DS_33_NAME);
- strcat(scalename, "as");
- strcpy(name, SCALE_33_NAME);
- strcat(name, "as");
+ HDstrcpy(scalename, DS_33_NAME);
+ HDstrcat(scalename, "as");
+ HDstrcpy(name, SCALE_33_NAME);
+ HDstrcat(name, "as");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
@@ -1962,58 +1964,58 @@ static int test_int_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "a");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "a");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set int scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "a");
- strcpy(name, SCALE_1_NAME);
- strcat(name, "a");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "a");
+ HDstrcpy(name, SCALE_1_NAME);
+ HDstrcat(name, "a");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "a");
- strcpy(name, SCALE_11_NAME);
- strcat(name, "a");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "a");
+ HDstrcpy(name, SCALE_11_NAME);
+ HDstrcat(name, "a");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "a");
- strcpy(name, SCALE_2_NAME);
- strcat(name, "a");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "a");
+ HDstrcpy(name, SCALE_2_NAME);
+ HDstrcat(name, "a");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "a");
- strcpy(name, SCALE_21_NAME);
- strcat(name, "a");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "a");
+ HDstrcpy(name, SCALE_21_NAME);
+ HDstrcat(name, "a");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "a");
- strcpy(name, SCALE_22_NAME);
- strcat(name, "a");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "a");
+ HDstrcpy(name, SCALE_22_NAME);
+ HDstrcat(name, "a");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
@@ -2048,48 +2050,48 @@ static int test_long_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "al");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "al");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set long scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "al");
- strcpy(name, SCALE_1_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, SCALE_1_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "al");
- strcpy(name, SCALE_2_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, SCALE_2_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "al");
- strcpy(name, SCALE_3_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, SCALE_3_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
- strcpy(scalename, DS_4_NAME);
- strcat(scalename, "al");
- strcpy(name, SCALE_4_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_4_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, SCALE_4_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM3) < 0)
goto out;
@@ -2124,48 +2126,48 @@ static int test_samelong_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "al2");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "al2");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set same long scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "al");
- strcpy(name, DS_1_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, DS_1_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "al");
- strcpy(name, DS_2_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, DS_2_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_3_NAME);
- strcat(scalename, "al");
- strcpy(name, DS_3_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_3_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, DS_3_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM2) < 0)
goto out;
- strcpy(scalename, DS_4_NAME);
- strcat(scalename, "al");
- strcpy(name, DS_4_NAME);
- strcat(name, "al");
+ HDstrcpy(scalename, DS_4_NAME);
+ HDstrcat(scalename, "al");
+ HDstrcpy(name, DS_4_NAME);
+ HDstrcat(name, "al");
if(test_set_scalename(fid, did, scalename, name, DIM3) < 0)
goto out;
@@ -2200,58 +2202,58 @@ static int test_float_scalenames(const char *fileext) {
char dsname[32];
char scalename[32];
char name[32];
- strcpy(dsname, DATASET_NAME);
- strcat(dsname, "af");
+ HDstrcpy(dsname, DATASET_NAME);
+ HDstrcat(dsname, "af");
if((fid = open_test_file(fileext)) < 0)
goto out;
TESTING2("set float scale/cmp scale name");
if((did = H5Dopen2(fid, dsname, H5P_DEFAULT)) >= 0) {
- strcpy(scalename, DS_1_NAME);
- strcat(scalename, "af");
- strcpy(name, SCALE_1_NAME);
- strcat(name, "af");
+ HDstrcpy(scalename, DS_1_NAME);
+ HDstrcat(scalename, "af");
+ HDstrcpy(name, SCALE_1_NAME);
+ HDstrcat(name, "af");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_11_NAME);
- strcat(scalename, "af");
- strcpy(name, SCALE_11_NAME);
- strcat(name, "af");
+ HDstrcpy(scalename, DS_11_NAME);
+ HDstrcat(scalename, "af");
+ HDstrcpy(name, SCALE_11_NAME);
+ HDstrcat(name, "af");
if(test_set_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM0) < 0)
goto out;
- strcpy(scalename, DS_2_NAME);
- strcat(scalename, "af");
- strcpy(name, SCALE_2_NAME);
- strcat(name, "af");
+ HDstrcpy(scalename, DS_2_NAME);
+ HDstrcat(scalename, "af");
+ HDstrcpy(name, SCALE_2_NAME);
+ HDstrcat(name, "af");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_21_NAME);
- strcat(scalename, "af");
- strcpy(name, SCALE_21_NAME);
- strcat(name, "af");
+ HDstrcpy(scalename, DS_21_NAME);
+ HDstrcat(scalename, "af");
+ HDstrcpy(name, SCALE_21_NAME);
+ HDstrcat(name, "af");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
if(test_cmp_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
- strcpy(scalename, DS_22_NAME);
- strcat(scalename, "af");
- strcpy(name, SCALE_22_NAME);
- strcat(name, "af");
+ HDstrcpy(scalename, DS_22_NAME);
+ HDstrcat(scalename, "af");
+ HDstrcpy(name, SCALE_22_NAME);
+ HDstrcat(name, "af");
if(test_set_scalename(fid, did, scalename, name, DIM1) < 0)
goto out;
@@ -3044,13 +3046,11 @@ static int test_simple(void)
*-------------------------------------------------------------------------
*/
- for(i=0; i<5; i++)
- {
+ for(i=0; i<5; i++) {
sprintf(dname,"dset_%d",i);
if((did = H5Dopen2(gid,dname, H5P_DEFAULT)) < 0)
goto out;
- for(j=0; j<5; j++)
- {
+ for(j=0; j<5; j++) {
sprintf(sname,"ds_%d",j);
if((dsid = H5Dopen2(gid,sname, H5P_DEFAULT)) < 0)
goto out;
@@ -3097,15 +3097,12 @@ static int test_simple(void)
/* try to detach all dimensions. for dimensions 0 and 2, it is an error */
- for(i=0; i<rank; i++)
- {
- if( i==1 )
- {
+ for(i=0; i<rank; i++) {
+ if( i==1 ) {
if(H5DSdetach_scale(did,dsid,(unsigned)i) < 0)
goto out;
}
- else
- {
+ else {
if(H5DSdetach_scale(did,dsid,(unsigned)i)!=FAIL)
goto out;
}
@@ -3136,6 +3133,11 @@ static int test_simple(void)
if(H5DSset_label(did,DIM0,DIM0_LABEL) < 0)
goto out;
+
+ /* check getting a label which does not exist */
+ if(H5DSget_label(did,DIM1,dim1_label,sizeof(dim1_label)) != 0)
+ goto out;
+
if(H5DSset_label(did,DIM1,DIM1_LABEL) < 0)
goto out;
@@ -3148,9 +3150,9 @@ static int test_simple(void)
goto out;
if(H5DSget_label(did,DIM1,dim1_label,sizeof(dim1_label)) < 0)
goto out;
- if(strcmp(DIM0_LABEL,dim0_label)!=0)
+ if(HDstrcmp(DIM0_LABEL,dim0_label)!=0)
goto out;
- if(strcmp(DIM1_LABEL,dim1_label)!=0)
+ if(HDstrcmp(DIM1_LABEL,dim1_label)!=0)
goto out;
/*-------------------------------------------------------------------------
@@ -3164,26 +3166,24 @@ static int test_simple(void)
goto out;
/* allocate */
- dim0_labeld = (char*)malloc(dim0_label_size * sizeof (char));
- dim1_labeld = (char*)malloc(dim1_label_size * sizeof (char));
+ dim0_labeld = (char*)HDmalloc(dim0_label_size * sizeof (char));
+ dim1_labeld = (char*)HDmalloc(dim1_label_size * sizeof (char));
if( dim0_labeld==NULL || dim1_labeld==NULL)
goto out;
if(H5DSget_label(did,DIM0,dim0_labeld,(size_t)dim0_label_size) < 0)
goto out;
if(H5DSget_label(did,DIM1,dim1_labeld,(size_t)dim1_label_size) < 0)
goto out;
- if(strncmp(DIM0_LABEL,dim0_labeld,(size_t)(dim0_label_size-1))!=0)
+ if(HDstrncmp(DIM0_LABEL,dim0_labeld,(size_t)(dim0_label_size-1))!=0)
goto out;
- if(strncmp(DIM1_LABEL,dim1_labeld,(size_t)(dim1_label_size-1))!=0)
+ if(HDstrncmp(DIM1_LABEL,dim1_labeld,(size_t)(dim1_label_size-1))!=0)
goto out;
- if(dim0_labeld)
- {
- free(dim0_labeld);
+ if(dim0_labeld) {
+ HDfree(dim0_labeld);
dim0_labeld=NULL;
}
- if(dim1_labeld)
- {
- free(dim1_labeld);
+ if(dim1_labeld) {
+ HDfree(dim1_labeld);
dim1_labeld=NULL;
}
@@ -3197,9 +3197,9 @@ static int test_simple(void)
goto out;
if(H5DSget_label(did,DIM1,dim1_labels,sizeof(dim1_labels)) < 0)
goto out;
- if(strncmp(DIM0_LABEL,dim0_label,sizeof(dim0_labels)-1)!=0)
+ if(HDstrncmp(DIM0_LABEL,dim0_label,sizeof(dim0_labels)-1)!=0)
goto out;
- if(strncmp(DIM1_LABEL,dim1_label,sizeof(dim1_labels)-1)!=0)
+ if(HDstrncmp(DIM1_LABEL,dim1_label,sizeof(dim1_labels)-1)!=0)
goto out;
if(H5Dclose(did))
goto out;
@@ -3232,7 +3232,7 @@ static int test_simple(void)
goto out;
/* allocate a buffer */
- name_out = (char*)malloc(name_len * sizeof (char));
+ name_out = (char*)HDmalloc(name_len * sizeof (char));
if(name_out == NULL)
goto out;
@@ -3240,11 +3240,10 @@ static int test_simple(void)
if(H5DSget_scale_name(dsid, name_out, (size_t)name_len) < 0)
goto out;
- if(strcmp("Latitude set 0",name_out)!=0)
+ if(HDstrcmp("Latitude set 0",name_out)!=0)
goto out;
- if(name_out)
- {
- free(name_out);
+ if(name_out) {
+ HDfree(name_out);
name_out=NULL;
}
@@ -3257,7 +3256,7 @@ static int test_simple(void)
if(H5DSget_scale_name(dsid, sname, sizeof (sname)) < 0)
goto out;
- if(strcmp("Latitude set 0",sname)!=0)
+ if(HDstrcmp("Latitude set 0",sname)!=0)
goto out;
/*-------------------------------------------------------------------------
@@ -3269,7 +3268,7 @@ static int test_simple(void)
if(H5DSget_scale_name(dsid, snames, sizeof (snames)) < 0)
goto out;
- if(strncmp("Latitude set 0",snames,sizeof(snames)-1)!=0)
+ if(HDstrncmp("Latitude set 0",snames,sizeof(snames)-1)!=0)
goto out;
if(H5Dclose(dsid))
goto out;
@@ -3396,8 +3395,7 @@ static int test_simple(void)
int idx = 0; /* scale index to start iterating, on return, index where iterator stoped */
/* iterate trough all the dimensions */
- for(dim=0; dim<(unsigned)rank; dim++)
- {
+ for(dim=0; dim<(unsigned)rank; dim++) {
if((match_size=H5DSiterate_scales(did,dim,&idx,match_dim_scale,NULL)) < 0)
goto out;
@@ -3493,8 +3491,7 @@ static int test_simple(void)
int idx; /* scale index to start iterating, on return, index where iterator stoped */
/* iterate trough all the dimensions */
- for(dim=0; dim<(unsigned)rank; dim++)
- {
+ for(dim=0; dim<(unsigned)rank; dim++) {
/* always start at 1st scale */
idx=0;
@@ -3504,8 +3501,7 @@ static int test_simple(void)
/* "dset_e" was defined with :
dim 0: 2 scales, first is empty
dim 1: 1 scale, empty */
- switch(dim)
- {
+ switch(dim) {
case 0: /* for DIM 0, we get a valid scale at IDX 1 */
if(match_size!=1 && idx!=1)
goto out;
@@ -3515,11 +3511,11 @@ static int test_simple(void)
goto out;
break;
default:
- assert(0);
+ HDassert(0);
break;
}/*switch*/
}/*for*/
- }
+ }
/* close */
if(H5Dclose(did) < 0)
@@ -3587,8 +3583,7 @@ static herr_t verify_scale(hid_t dset, unsigned dim, hid_t scale_id, void *visit
*/
/* the parameter DS dataset must be a valid DS dataset */
- if((H5DSis_scale(scale_id))==1)
- {
+ if((H5DSis_scale(scale_id))==1) {
ret = 1;
}
@@ -3646,18 +3641,15 @@ static herr_t read_scale(hid_t dset, unsigned dim, hid_t scale_id, void *visitor
if((size=H5Tget_size(mtid))==0)
goto out;
- if(nelmts)
- {
- buf=(char *) malloc((size_t)(nelmts*size));
- if( buf==NULL)
+ if(nelmts) {
+ buf=(char *)HDmalloc((size_t)(nelmts*size));
+ if(buf==NULL)
goto out;
if(H5Dread(scale_id,mtid,H5S_ALL,H5S_ALL,H5P_DEFAULT,buf) < 0)
goto out;
- for(i=0; i<nelmts; i++)
- {
- if(buf[i] != data[i])
- {
+ for(i=0; i<nelmts; i++) {
+ if(buf[i] != data[i]) {
printf("read and write buffers differ\n");
goto out;
}
@@ -3672,21 +3664,19 @@ static herr_t read_scale(hid_t dset, unsigned dim, hid_t scale_id, void *visitor
if(H5Tclose(mtid) < 0)
goto out;
if(buf)
- free(buf);
+ HDfree(buf);
return ret;
/* error zone */
out:
- H5E_BEGIN_TRY
- {
+ H5E_BEGIN_TRY {
H5Sclose(sid);
H5Tclose(tid);
H5Tclose(mtid);
- if(buf)
- {
- free(buf);
+ if(buf) {
+ HDfree(buf);
}
} H5E_END_TRY;
@@ -3769,8 +3759,7 @@ static herr_t match_dim_scale(hid_t did, unsigned dim, hid_t dsid, void *visitor
return ret;
out:
- H5E_BEGIN_TRY
- {
+ H5E_BEGIN_TRY {
H5Sclose(sid);
} H5E_END_TRY;
return FAIL;
@@ -3801,8 +3790,7 @@ static herr_t op_continue(hid_t dset, unsigned dim, hid_t scale_id, void *visito
dim = dim;
scale_id = scale_id;
- if ( visitor_data != NULL )
- {
+ if ( visitor_data != NULL ) {
(*(int *)visitor_data)++;
}
@@ -3834,8 +3822,7 @@ static herr_t op_stop(hid_t dset, unsigned dim, hid_t scale_id, void *visitor_da
dim = dim;
scale_id = scale_id;
- if ( visitor_data != NULL )
- {
+ if ( visitor_data != NULL ) {
(*(int *)visitor_data)++;
}
@@ -4318,8 +4305,7 @@ static int test_iterators(void)
if((did = H5Dopen2(fid,"dset_a", H5P_DEFAULT)) < 0)
goto out;
- for(i=0; i<100; i++)
- {
+ for(i=0; i<100; i++) {
/* make a DS */
sprintf(dname,"ds_%d",i);
if(H5LTmake_dataset_int(fid,dname,rankds,s1_dim,NULL) < 0)
@@ -4471,8 +4457,7 @@ static int test_rank(void)
if((did = H5Dopen2(fid,"dset_a", H5P_DEFAULT)) < 0)
goto out;
- for(i=0; i<3; i++)
- {
+ for(i=0; i<3; i++) {
sprintf(name,"ds_a_%d",i);
if((dsid = H5Dopen2(fid,name, H5P_DEFAULT)) < 0)
goto out;
@@ -4500,8 +4485,7 @@ static int test_rank(void)
if((did = H5Dopen2(fid,"dset_a", H5P_DEFAULT)) < 0)
goto out;
- for(i=0; i<3; i++)
- {
+ for(i=0; i<3; i++) {
sprintf(name,"ds_a_%d",i);
if((dsid = H5Dopen2(fid,name, H5P_DEFAULT)) < 0)
goto out;
@@ -4527,8 +4511,7 @@ static int test_rank(void)
if((did = H5Dopen2(fid,"dset_a", H5P_DEFAULT)) < 0)
goto out;
- for(i=0; i<3; i++)
- {
+ for(i=0; i<3; i++) {
sprintf(name,"ds_a_%d",i);
if((dsid = H5Dopen2(fid,name, H5P_DEFAULT)) < 0)
goto out;
@@ -4546,9 +4529,9 @@ static int test_rank(void)
goto out;
if(H5DSget_label(did,(unsigned)i,namel,sizeof(namel)) < 0)
goto out;
- if(strcmp(name,names)!=0)
+ if(HDstrcmp(name,names)!=0)
goto out;
- if(strcmp(name,namel)!=0)
+ if(HDstrcmp(name,namel)!=0)
goto out;
}
@@ -4850,7 +4833,7 @@ static int test_data(void)
if(H5LTmake_dataset_float(fid, "lat", 1, latdims, latbuf) < 0)
goto out;
- free( latbuf );
+ HDfree( latbuf );
latbuf = NULL;
/* read the longitude */
@@ -4861,7 +4844,7 @@ static int test_data(void)
if(H5LTmake_dataset_float(fid, "lon", 1, londims, lonbuf) < 0)
goto out;
- free( lonbuf );
+ HDfree( lonbuf );
lonbuf = NULL;
/* make a dataset for the data. a fill value is set */
@@ -4881,7 +4864,7 @@ static int test_data(void)
if(H5Dwrite(did, H5T_NATIVE_FLOAT, H5S_ALL, H5S_ALL, H5P_DEFAULT, vals) < 0)
goto out;
- free ( vals );
+ HDfree ( vals );
vals = NULL;
if(H5Dclose(did) < 0)
@@ -4957,11 +4940,11 @@ out:
H5_FAILED();
if (latbuf)
- free( latbuf );
+ HDfree( latbuf );
if (lonbuf)
- free( lonbuf );
+ HDfree( lonbuf );
if (vals)
- free( vals );
+ HDfree( vals );
return FAIL;
}
@@ -4994,36 +4977,32 @@ static int read_data( const char* fname,
const char *data_file = H5_get_srcdir_filename(fname);
/* read first data file */
- f = fopen(data_file, "r");
- if( f == NULL )
- {
+ f = HDfopen(data_file, "r");
+ if( f == NULL ) {
printf( "Could not open file %s\n", data_file );
return -1;
}
- for(i=0, nelms=1; i < ndims; i++)
- {
+ for(i=0, nelms=1; i < ndims; i++) {
fscanf( f, "%s %u", str, &j);
fscanf( f, "%d",&n );
dims[i] = n;
nelms *= n;
}
- *buf = (float*) malloc (nelms * sizeof( float ));
+ *buf = (float*) HDmalloc (nelms * sizeof( float ));
- if ( *buf == NULL )
- {
+ if ( *buf == NULL ) {
printf( "memory allocation failed\n" );
- fclose(f);
+ HDfclose(f);
return -1;
}
- for(j = 0; j < nelms; j++)
- {
+ for(j = 0; j < nelms; j++) {
fscanf( f, "%f",&val );
(*buf)[j] = val;
}
- fclose(f);
+ HDfclose(f);
return 1;
@@ -5184,8 +5163,7 @@ static int test_errors2(void)
if (H5DSiterate_scales(did,0,&scale_idx,op_continue,(void *)&count) < 0)
goto out;
- if ( scale_idx != 1 && count != nscales )
- {
+ if ( scale_idx != 1 && count != nscales ) {
goto out;
}
@@ -5195,8 +5173,7 @@ static int test_errors2(void)
if (H5DSiterate_scales(did,0,&scale_idx,op_stop,(void *)&count) < 0)
goto out;
- if ( scale_idx != 0 && count != 1 )
- {
+ if ( scale_idx != 0 && count != 1 ) {
goto out;
}
@@ -5226,4 +5203,242 @@ out:
H5_FAILED();
return FAIL;
}
+/*-------------------------------------------------------------------------
+ * Test attaching and detaching in different order
+ * Checks condition reported in Bug HDFFV-7605
+ *-------------------------------------------------------------------------
+ */
+
+static int test_attach_detach(void)
+{
+ hid_t fid; /* file ID */
+ hid_t gid; /* group ID */
+ hid_t sid; /* dataspace ID */
+ hid_t dcpl_id; /* dataset creation property */
+ hid_t dsid = -1; /* DS dataset ID */
+ hid_t var1_id, var2_id, var3_id; /* DS component name */
+ hsize_t dims[RANK1] = {DIM1};
+
+ TESTING2("permutations of attaching and detaching");
+
+ if((fid = H5Fcreate(FILE8, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ goto out;
+
+ if((gid = H5Gopen2(fid, "/", H5P_DEFAULT)) < 0)
+ goto out;
+
+ /* Create dimension scale. */
+
+ if((dcpl_id = H5Pcreate(H5P_DATASET_CREATE)) < 0)
+ goto out;
+
+ if((sid = H5Screate_simple(1, dims, dims)) < 0)
+ goto out;
+ if((dsid = H5Dcreate2(gid, DS_3_NAME, H5T_IEEE_F32BE, sid,
+ H5P_DEFAULT, dcpl_id, H5P_DEFAULT)) < 0)
+ goto out;
+
+ if(H5Sclose(sid) < 0)
+ goto out;
+ if(H5Pclose(dcpl_id) < 0)
+ goto out;
+
+ if(H5DSset_scale(dsid, DS_3_NAME) < 0)
+ goto out;
+
+ /* Create a variable that uses this dimension scale. */
+
+ if((sid = H5Screate_simple(DIM1, dims, dims)) < 0)
+ goto out;
+
+ if((var1_id = H5Dcreate2(gid, DS_31_NAME, H5T_NATIVE_FLOAT, sid,
+ H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT)) < 0)
+ goto out;
+
+ if(H5Sclose(sid) < 0)
+ goto out;
+
+ if(H5DSattach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ /* Create another variable that uses this dimension scale. */
+ if((dcpl_id = H5Pcreate(H5P_DATASET_CREATE)) < 0)
+ goto out;
+
+ if(H5Pset_attr_creation_order(dcpl_id, H5P_CRT_ORDER_TRACKED | H5P_CRT_ORDER_INDEXED) < 0)
+ goto out;
+
+ if((sid = H5Screate_simple(DIM1, dims, dims)) < 0)
+ goto out;
+
+ if((var2_id = H5Dcreate2(gid, DS_32_NAME, H5T_NATIVE_FLOAT, sid,
+ H5P_DEFAULT, H5P_DEFAULT,H5P_DEFAULT)) < 0)
+ goto out;
+
+ if(H5Pclose(dcpl_id) < 0)
+ goto out;
+
+ if(H5Sclose(sid) < 0)
+ goto out;
+
+ /* Create 3rd variable that uses this dimension scale. */
+ if((dcpl_id = H5Pcreate(H5P_DATASET_CREATE)) < 0)
+ goto out;
+
+ if(H5Pset_attr_creation_order(dcpl_id, H5P_CRT_ORDER_TRACKED | H5P_CRT_ORDER_INDEXED) < 0)
+ goto out;
+
+ if((sid = H5Screate_simple(DIM1, dims, dims)) < 0)
+ goto out;
+
+ if((var3_id = H5Dcreate2(gid, DS_33_NAME, H5T_NATIVE_FLOAT, sid,
+ H5P_DEFAULT, H5P_DEFAULT,H5P_DEFAULT)) < 0)
+ goto out;
+
+ if(H5Pclose(dcpl_id) < 0)
+ goto out;
+
+ if(H5Sclose(sid) < 0)
+ goto out;
+
+ /* Attached var2 scale */
+ if(H5DSattach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ /* Detach the var2 scale */
+ if(H5DSdetach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+ if(H5DSis_attached(var1_id, dsid, 0) == 0) /* should still be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+
+ /* Detach the var1 scale */
+ if(H5DSdetach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+ if(H5DSis_attached(var1_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+
+ /* Attach the DS again and remove them in the opposite order */
+
+ if(H5DSattach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ if(H5DSattach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ /* Detach the var1 scale */
+ if(H5DSdetach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+
+ if(H5DSis_attached(var1_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) == 0) /* should still be attached */
+ goto out;
+
+ /* Detach the var2 scale */
+ if(H5DSdetach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+ if(H5DSis_attached(var1_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+
+ /***************************************************
+ * Attach Three DS and remove the middle one first
+ *****************************************************/
+
+ if(H5DSattach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ if(H5DSattach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ if(H5DSattach_scale(var3_id, dsid, 0) < 0)
+ goto out;
+
+
+ /* Detach the var2 scale */
+ if(H5DSdetach_scale(var2_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+
+ if(H5DSis_attached(var1_id, dsid, 0) == 0) /* should still be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var3_id, dsid, 0) == 0) /* should still be attached */
+ goto out;
+
+ /* Detach the var3 scale */
+ if(H5DSdetach_scale(var3_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+ if(H5DSis_attached(var1_id, dsid, 0) == 0) /* should still be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var3_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+
+ /* Detach the var1 scale */
+ if(H5DSdetach_scale(var1_id, dsid, 0) < 0)
+ goto out;
+
+ /* Check if in correct state of detached and attached */
+ if(H5DSis_attached(var1_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var2_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+ if(H5DSis_attached(var3_id, dsid, 0) != 0) /* should not be attached */
+ goto out;
+
+ /*-------------------------------------------------------------------------
+ * close
+ *-------------------------------------------------------------------------
+ */
+
+ if(H5Dclose(var1_id) < 0)
+ goto out;
+ if(H5Dclose(var2_id) < 0)
+ goto out;
+ if(H5Dclose(var3_id) < 0)
+ goto out;
+ if(H5Dclose(dsid) < 0)
+ goto out;
+ if(H5Gclose(gid) < 0)
+ goto out;
+ if(H5Fclose(fid) < 0)
+ goto out;
+
+ PASSED();
+
+ return 0;
+
+ /* error zone */
+out:
+ H5E_BEGIN_TRY
+ {
+ H5Dclose(var1_id);
+ H5Dclose(var2_id);
+ H5Dclose(var3_id);
+ H5Dclose(dsid);
+ H5Gclose(gid);
+ H5Fclose(fid);
+ } H5E_END_TRY;
+ H5_FAILED();
+ return FAIL;
+}
diff --git a/hl/test/test_image.c b/hl/test/test_image.c
index 1332841..3914a9f 100644
--- a/hl/test/test_image.c
+++ b/hl/test/test_image.c
@@ -525,7 +525,7 @@ static int test_generate(void)
*-------------------------------------------------------------------------
*/
- f = fopen( data_file, "r" ) ;
+ f = HDfopen( data_file, "r" ) ;
if ( f == NULL )
{
printf( "Could not find file %s. Try set $srcdir \n", data_file );
@@ -572,15 +572,15 @@ static int test_generate(void)
fscanf( f, "%d %d %d", &imax, &jmax, &kmax );
fscanf( f, "%f %f %f", &valex, &xmin, &xmax );
- data = (float*) malloc ( imax * jmax * kmax * sizeof( float ));
- image_data = (unsigned char*) malloc ( imax * jmax * kmax * sizeof( unsigned char ));
+ data = (float*) HDmalloc ( imax * jmax * kmax * sizeof( float ));
+ image_data = (unsigned char*) HDmalloc ( imax * jmax * kmax * sizeof( unsigned char ));
for ( i = 0; i < imax * jmax * kmax; i++ )
{
fscanf( f, "%f ", &value );
data[i] = value;
}
- fclose( f );
+ HDfclose( f );
/*-------------------------------------------------------------------------
* transform the data from floating point to unsigned char
@@ -719,7 +719,7 @@ static int read_data( const char* fname, /*IN*/
*-------------------------------------------------------------------------
*/
- f = fopen(data_file, "r");
+ f = HDfopen(data_file, "r");
if ( f == NULL )
{
printf( "Could not open file %s. Try set $srcdir \n", data_file );
@@ -738,18 +738,18 @@ static int read_data( const char* fname, /*IN*/
if ( image_data )
{
- free( image_data );
+ HDfree( image_data );
image_data=NULL;
}
- image_data = (unsigned char*) malloc (w * h * color_planes * sizeof( unsigned char ));
+ image_data = (unsigned char*) HDmalloc (w * h * color_planes * sizeof( unsigned char ));
for (i = 0; i < h * w * color_planes ; i++)
{
fscanf( f, "%d",&n );
image_data[i] = (unsigned char)n;
}
- fclose(f);
+ HDfclose(f);
return 1;
@@ -794,46 +794,46 @@ static int read_palette(const char* fname,
return -1;
/* open the input file */
- if (!(file = fopen(data_file, "r")))
+ if (!(file = HDfopen(data_file, "r")))
{
printf( "Could not open file %s. Try set $srcdir \n", data_file );
return -1;
}
/* read the file ident string */
- if (fgets(buffer, sizeof(buffer), file) == NULL)
+ if (HDfgets(buffer, sizeof(buffer), file) == NULL)
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* ensure it matches the palette file ident string */
- if ( strncmp(buffer, STRING_JASC, sizeof(STRING_JASC) - 1) != 0 &&
- strncmp(buffer, STRING_CWPAL, sizeof(STRING_CWPAL) - 1) != 0 )
+ if ( HDstrncmp(buffer, STRING_JASC, sizeof(STRING_JASC) - 1) != 0 &&
+ HDstrncmp(buffer, STRING_CWPAL, sizeof(STRING_CWPAL) - 1) != 0 )
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* read the version string */
- if (fgets(buffer, sizeof(buffer), file) == NULL)
+ if (HDfgets(buffer, sizeof(buffer), file) == NULL)
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* ensure it matches the palette file version string */
- if ( strncmp(buffer, VERSION_JASC, sizeof(VERSION_JASC) - 1) != 0 &&
- strncmp(buffer, VERSION_CWPAL, sizeof(VERSION_CWPAL) - 1) != 0 )
+ if ( HDstrncmp(buffer, VERSION_JASC, sizeof(VERSION_JASC) - 1) != 0 &&
+ HDstrncmp(buffer, VERSION_CWPAL, sizeof(VERSION_CWPAL) - 1) != 0 )
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* read the number of colors */
- if (fgets(buffer, sizeof(buffer), file) == NULL)
+ if (HDfgets(buffer, sizeof(buffer), file) == NULL)
{
- fclose(file);
+ HDfclose(file);
return -1;
}
@@ -842,22 +842,22 @@ static int read_palette(const char* fname,
check for missing version or number of colors
in this case it reads the first entry
*/
- if ( strlen( buffer ) > 4 )
+ if ( HDstrlen( buffer ) > 4 )
{
- fclose(file);
+ HDfclose(file);
return -1;
}
if (sscanf(buffer, "%u", &nentries) != 1)
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* ensure there are a sensible number of colors in the palette */
if ((nentries > 256) || (nentries > palette_size))
{
- fclose(file);
+ HDfclose(file);
return(-1);
}
@@ -867,7 +867,7 @@ static int read_palette(const char* fname,
/* extract the red, green and blue color components. */
if (fscanf(file, "%u %u %u", &red, &green, &blue) != 3)
{
- fclose(file);
+ HDfclose(file);
return -1;
}
/* store this palette entry */
@@ -877,7 +877,7 @@ static int read_palette(const char* fname,
}
/* close file */
- fclose(file);
+ HDfclose(file);
return nentries;
}
diff --git a/hl/test/test_lite.c b/hl/test/test_lite.c
index 2b36eb6..59da1f1 100644
--- a/hl/test/test_lite.c
+++ b/hl/test/test_lite.c
@@ -21,6 +21,8 @@
#define FILE_NAME "test_lite1.h5"
#define FILE_NAME2 "test_lite2.h5"
+#define FILE_NAME3 "test_lite3.h5"
+#define FILE_NAME4 "test_lite4.h5"
#define INPUT_FILE "dtype_file.txt"
#define DSET0_NAME "2D int array"
@@ -367,7 +369,7 @@ static int test_dsets( void )
if ( H5LTread_dataset_string(file_id,DSET7_NAME,data_string_out) < 0 )
goto out;
- if ( strcmp(data_string_in,data_string_out) != 0 )
+ if ( HDstrcmp(data_string_in,data_string_out) != 0 )
goto out;
@@ -536,7 +538,7 @@ static herr_t make_attributes( hid_t loc_id, const char* obj_name )
if ( H5LTget_attribute_string( loc_id, obj_name, ATTR1_NAME, attr_str_out ) < 0 )
return -1;
- if ( strcmp( attr_str_in, attr_str_out ) != 0 )
+ if ( HDstrcmp( attr_str_in, attr_str_out ) != 0 )
{
return -1;
}
@@ -1015,25 +1017,25 @@ static herr_t make_attributes( hid_t loc_id, const char* obj_name )
TESTING("H5LTget_attribute_info");
- dims_out = (hsize_t*) malloc( sizeof(hsize_t) * rank_out );
+ if(NULL==(dims_out = (hsize_t*) HDmalloc( sizeof(hsize_t) * rank_out ))) return -1;
- if ( H5LTget_attribute_info( loc_id, obj_name, ATTR2_NAME, dims_out, &type_class,
- &type_size) < 0 )
+ if ( H5LTget_attribute_info( loc_id, obj_name, ATTR2_NAME, dims_out, &type_class, &type_size) < 0 ) {
+ HDfree( dims_out );
return -1;
-
- for (i = 0; i < rank_out; i++)
- {
+ }
+
+ for (i = 0; i < rank_out; i++) {
if ( dims_out[i] != 5 ) {
+ HDfree( dims_out );
return -1;
}
}
if ( type_class != H5T_INTEGER ) {
+ HDfree( dims_out );
return -1;
}
-
- if ( dims_out )
- free( dims_out );
+ HDfree( dims_out );
PASSED();
@@ -1066,12 +1068,18 @@ static int test_integers(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
goto out;
- if(strcmp(dt_str, "H5T_STD_I8BE"))
+ }
+ if(HDstrcmp(dt_str, "H5T_STD_I8BE")) {
+ HDfree(dt_str);
goto out;
- free(dt_str);
+ }
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1117,12 +1125,18 @@ static int test_fps(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
goto out;
- if(strcmp(dt_str, "H5T_IEEE_F32BE"))
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
goto out;
- free(dt_str);
+ }
+ if(HDstrcmp(dt_str, "H5T_IEEE_F32BE")) {
+ HDfree(dt_str);
+ goto out;
+ }
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1180,14 +1194,18 @@ static int test_strings(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
goto out;
- if(strcmp(dt_str, "H5T_STRING {\n STRSIZE 13;\n STRPAD H5T_STR_NULLTERM;\n CSET H5T_CSET_ASCII;\n CTYPE H5T_C_S1;\n }")) {
+ }
+ if(HDstrcmp(dt_str, "H5T_STRING {\n STRSIZE 13;\n STRPAD H5T_STR_NULLTERM;\n CSET H5T_CSET_ASCII;\n CTYPE H5T_C_S1;\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1208,14 +1226,18 @@ static int test_strings(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
goto out;
- if(strcmp(dt_str, "H5T_STRING {\n STRSIZE H5T_VARIABLE;\n STRPAD H5T_STR_NULLPAD;\n CSET H5T_CSET_ASCII;\n CTYPE H5T_C_S1;\n }")) {
+ }
+ if(HDstrcmp(dt_str, "H5T_STRING {\n STRSIZE H5T_VARIABLE;\n STRPAD H5T_STR_NULLPAD;\n CSET H5T_CSET_ASCII;\n CTYPE H5T_C_S1;\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1257,14 +1279,18 @@ static int test_opaques(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
goto out;
- if(strcmp(dt_str, "H5T_OPAQUE {\n OPQ_SIZE 19;\n OPQ_TAG \"This is a tag for opaque type\";\n }")) {
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+ if(HDstrcmp(dt_str, "H5T_OPAQUE {\n OPQ_SIZE 19;\n OPQ_TAG \"This is a tag for opaque type\";\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1311,7 +1337,7 @@ static int test_enums(void)
if(H5Tenum_nameof(dtype, &value1, name1, size)<0)
goto out;
- if(strcmp(name1, "BLUE"))
+ if(HDstrcmp(name1, "BLUE"))
goto out;
if(H5Tenum_valueof(dtype, name2, &value2)<0)
@@ -1328,16 +1354,20 @@ static int test_enums(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
goto out;
- if(strcmp(dt_str, "H5T_ENUM {\n H5T_STD_I32LE;\n \"RED\" 5;\n \"GREEN\" 6;\n \"BLUE\" 7;\n \"WHITE\" 8;\n }")) {
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+ if(HDstrcmp(dt_str, "H5T_ENUM {\n H5T_STD_I32LE;\n \"RED\" 5;\n \"GREEN\" 6;\n \"BLUE\" 7;\n \"WHITE\" 8;\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1373,30 +1403,34 @@ static int test_variables(void)
if(H5Tis_variable_str(dtype))
goto out;
-
+
if(H5Tclose(dtype)<0)
goto out;
-
+
if((dtype = H5LTtext_to_dtype("H5T_VLEN { H5T_VLEN { H5T_STD_I32BE } }", H5LT_DDL))<0)
goto out;
-
+
if(H5Tis_variable_str(dtype))
goto out;
-
+
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
goto out;
- if(strcmp(dt_str, "H5T_VLEN {\n H5T_VLEN {\n H5T_STD_I32BE\n }\n }")) {
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+ if(HDstrcmp(dt_str, "H5T_VLEN {\n H5T_VLEN {\n H5T_STD_I32BE\n }\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
-
+ HDfree(dt_str);
+
if(H5Tclose(dtype)<0)
goto out;
-
+
PASSED();
return 0;
@@ -1440,15 +1474,19 @@ static int test_arrays(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
goto out;
- if(strcmp(dt_str, "H5T_ARRAY {\n [5][7][13] H5T_ARRAY {\n [17][19] H5T_COMPOUND {\n H5T_STD_I8BE \"arr_compound_1\" : 0;\n H5T_STD_I32BE \"arr_compound_2\" : 1;\n }\n }\n }")) {
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+ if(HDstrcmp(dt_str, "H5T_ARRAY {\n [5][7][13] H5T_ARRAY {\n [17][19] H5T_COMPOUND {\n H5T_STD_I8BE \"arr_compound_1\" : 0;\n H5T_STD_I32BE \"arr_compound_2\" : 1;\n }\n }\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1492,14 +1530,18 @@ static int test_compounds(void)
if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
goto out;
- dt_str = (char*)calloc(str_len, sizeof(char));
- if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0)
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
goto out;
- if(strcmp(dt_str, "H5T_COMPOUND {\n H5T_STD_I16BE \"one_field\" : 2;\n H5T_STD_U8LE \"two_field\" : 6;\n }")) {
+ }
+ if(HDstrcmp(dt_str, "H5T_COMPOUND {\n H5T_STD_I16BE \"one_field\" : 2;\n H5T_STD_U8LE \"two_field\" : 6;\n }")) {
printf("dt=\n%s\n", dt_str);
+ HDfree(dt_str);
goto out;
}
- free(dt_str);
+ HDfree(dt_str);
if(H5Tclose(dtype)<0)
goto out;
@@ -1509,9 +1551,11 @@ static int test_compounds(void)
if((memb_name = H5Tget_member_name(dtype, 1)) == NULL)
goto out;
- if(strcmp(memb_name, "i16_field"))
+ if(HDstrcmp(memb_name, "i16_field")) {
+ HDfree(memb_name);
goto out;
- free(memb_name);
+ }
+ HDfree(memb_name);
if((memb_class = H5Tget_member_class(dtype, 2))<0)
goto out;
@@ -1527,6 +1571,121 @@ out:
}
/*-------------------------------------------------------------------------
+* subroutine for test_text_dtype(): test_compound_bug(). Test case for
+* issue 7701.
+*-------------------------------------------------------------------------
+*/
+static int test_compound_bug(void)
+{
+ hid_t dtype;
+ H5T_class_t type_class;
+ int nmembs;
+ char* memb_name = NULL;
+ char* dt_str;
+ size_t str_len;
+ char text[] = "H5T_COMPOUND { H5T_STD_I32LE \"state_________________________________________________________________________________\"; H5T_STD_I32LE \"desc_________________________________________________________________________________________\"; H5T_VLEN { H5T_COMPOUND { H5T_ENUM { H5T_STD_I16LE; \"ZERO\" 0; \"ONE\" 1; \"TWO\" 2; \"THREE\" 3; } \"type____\"; H5T_STD_I32LE \"sub_______________________________________________________________________________________________________________\"; H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_STR_SPACEPAD; CSET H5T_CSET_ASCII; CTYPE H5T_C_S1; } \"sub_desc\"; H5T_STD_I32LE \"final___________________________________________________________________________________________________\"; } } \"sub\"; }";
+ char text2[] =
+ "H5T_COMPOUND {\n"
+ " H5T_STD_I16LE \"state___________________________"
+ "__________________________________________________"
+ "____\" : 0;\n"
+ " H5T_STD_I16LE \"desc____________________________"
+ "__________________________________________________"
+ "___________\" : 2;\n"
+ " H5T_VLEN { H5T_COMPOUND {\n"
+ " H5T_ENUM { H5T_STD_I16LE; \"ZERO\" 0; \"ONE\" "
+ "1; \"TWO\" 2; \"THREE\" 3; } \"type____\" : 0;\n"
+ " H5T_STD_I32LE \"sub___________________________"
+ "__________________________________________________"
+ "__________________________________1\" : 4;\n"
+ " H5T_STRING { STRSIZE H5T_VARIABLE; STRPAD H5T_"
+ "STR_SPACEPAD; CSET H5T_CSET_ASCII; CTYPE H5T_C_S1;"
+ " } \"sub_desc\" : 8;\n"
+ " H5T_STD_I32LE \"final_________________________"
+ "__________________________________________________"
+ "________________________\" : 16;\n"
+ " } } \"sub\" : 8;\n"
+ "}\n";
+
+ TESTING3(" text for compound type of bug fix");
+
+ if((dtype = H5LTtext_to_dtype(text, H5LT_DDL))<0)
+ goto out;
+
+ if((type_class = H5Tget_class(dtype))<0)
+ goto out;
+ if(type_class != H5T_COMPOUND)
+ goto out;
+
+ if((memb_name = H5Tget_member_name(dtype, 2)) == NULL)
+ goto out;
+ if(HDstrcmp(memb_name, "sub")) {
+ HDfree(memb_name);
+ goto out;
+ }
+ HDfree(memb_name);
+
+ if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
+ goto out;
+
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+ HDfree(dt_str);
+
+ if(H5Tclose(dtype)<0)
+ goto out;
+
+
+ /* Test similar datatype in another format */
+ if((dtype = H5LTtext_to_dtype(text2, H5LT_DDL))<0)
+ goto out;
+
+ if((type_class = H5Tget_class(dtype))<0)
+ goto out;
+ if(type_class != H5T_COMPOUND)
+ goto out;
+
+ if((nmembs = H5Tget_nmembers(dtype))<0)
+ goto out;
+ if(nmembs != 3)
+ goto out;
+
+ if((memb_name = H5Tget_member_name(dtype, 1)) == NULL)
+ goto out;
+ if(HDstrcmp(memb_name, "desc_________________________________________________________________________________________")) {
+ HDfree(memb_name);
+ goto out;
+ }
+ HDfree(memb_name);
+
+ if(H5LTdtype_to_text(dtype, NULL, H5LT_DDL, &str_len)<0)
+ goto out;
+
+ if(NULL==(dt_str = (char*)HDcalloc(str_len, sizeof(char))))
+ goto out;
+ if(H5LTdtype_to_text(dtype, dt_str, H5LT_DDL, &str_len)<0) {
+ HDfree(dt_str);
+ goto out;
+ }
+
+ HDfree(dt_str);
+
+ if(H5Tclose(dtype)<0)
+ goto out;
+
+ PASSED();
+ return 0;
+
+out:
+ H5_FAILED();
+ return -1;
+}
+
+/*-------------------------------------------------------------------------
* subroutine for test_text_dtype(): test_complicated_compound().
*-------------------------------------------------------------------------
*/
@@ -1543,7 +1702,7 @@ static int test_complicated_compound(void)
TESTING3(" text for complicated compound types");
/* Open input file */
- fp = fopen(filename, "r");
+ fp = HDfopen(filename, "r");
if(fp == NULL) {
printf( "Could not find file %s. Try set $srcdir \n", filename);
goto out;
@@ -1553,23 +1712,23 @@ static int test_complicated_compound(void)
* Library has convenient function getline() but isn't available on
* all machines.
*/
- if((line = (char*)calloc(size, sizeof(char)))==NULL)
+ if((line = (char*)HDcalloc(size, sizeof(char)))==NULL)
goto out;
- if(fgets(line, (int)size, fp)==NULL)
+ if(HDfgets(line, (int)size, fp)==NULL)
goto out;
- while(strlen(line)==size-1) {
+ while(HDstrlen(line)==size-1) {
size *= 2;
if(line)
- free(line);
- if((line = (char*)calloc(size, sizeof(char)))==NULL)
+ HDfree(line);
+ if((line = (char*)HDcalloc(size, sizeof(char)))==NULL)
goto out;
- if(fseek(fp, 0L, SEEK_SET)!=0)
+ if(HDfseek(fp, 0L, SEEK_SET)!=0)
goto out;
- if(fgets(line, (int)size, fp)==NULL)
+ if(HDfgets(line, (int)size, fp)==NULL)
goto out;
}
- fclose(fp);
+ HDfclose(fp);
fp = NULL;
if((dtype = H5LTtext_to_dtype(line, H5LT_DDL))<0)
@@ -1587,7 +1746,7 @@ static int test_complicated_compound(void)
goto out;
if(line)
- free(line);
+ HDfree(line);
PASSED();
return 0;
@@ -1595,9 +1754,9 @@ static int test_complicated_compound(void)
out:
if(line)
- free(line);
+ HDfree(line);
if(fp)
- fclose(fp);
+ HDfclose(fp);
H5_FAILED();
return -1;
@@ -1635,6 +1794,9 @@ static int test_text_dtype(void)
if(test_compounds()<0)
goto out;
+ if(test_compound_bug()<0)
+ goto out;
+
if(test_complicated_compound()<0)
goto out;
@@ -1645,6 +1807,314 @@ out:
}
/*-------------------------------------------------------------------------
+ * test H5LTpath_valid function
+ *-------------------------------------------------------------------------
+ */
+static int test_valid_path(void)
+{
+ hid_t file_id, group;
+ herr_t status;
+ FILE *fp = NULL;
+ htri_t path_valid;
+ char path[10];
+ const char *data_string_in = "test";
+
+ TESTING("H5LTpath_valid");
+
+ /* Create a new file using default properties. */
+
+ /**************************************************************
+ * The file structure should look like this:
+ *
+ * +----------------------------------+
+ * | / |
+ * +----------------------------------+
+ * / | \ \
+ * / | \ \
+ * / | \ \
+ * / | \ G8 (dangled external link)
+ * / DS \
+ * / \
+ * G1 G2
+ * | --> DS1 |
+ * / \--> DS3 / \
+ * / / \
+ * G2 DS4 G7
+ * | (hard link (dangled soft link
+ * | to /G1/DS3) to /G1/G20 )
+ * / \
+ * / \
+ * G5 \
+ * (soft link G6 (external link /G1 in FILENAME4)
+ * to /G2)
+ *
+ ****************************************************************/
+
+ file_id = H5Fcreate(FILE_NAME3, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+
+ /*
+ * Create dataset "/DS"
+ */
+ if(H5LTmake_dataset_string(file_id, "DS", data_string_in)<0)
+ goto out;
+
+ /*
+ * Create an external dangled link
+ */
+ if(H5Lcreate_external("NonExistant_File.h5", "G8", file_id, "DangledExternalLink", H5P_DEFAULT, H5P_DEFAULT)<0)
+ goto out;
+
+ /*
+ * Create a group named "G2" in the file.
+ */
+ if((group = H5Gcreate2(file_id, "G2", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT))<0)
+ goto out;
+
+ /*
+ * Create a dataset named "G2/DS4" in the file.
+ */
+ if(H5LTmake_dataset_string(group, "/G2/DS4", data_string_in)<0)
+ goto out;
+
+ /*
+ * Create a soft link
+ */
+ if(H5Lcreate_soft("/G1/G20", file_id, "/G2/G7", H5P_DEFAULT, H5P_DEFAULT) <0)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+
+ /*
+ * Create a group named "G1" in the file.
+ */
+ if((group = H5Gcreate2(file_id, "G1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT))<0)
+ goto out;
+
+ /*
+ * Create a group named "G1/DS1" in the file.
+ */
+ if(H5LTmake_dataset_string(group, "/G1/DS1", data_string_in)<0)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+
+ /*
+ * Create a group named "/G3/G5" in the file.
+ */
+ if(H5Lcreate_hard(file_id, "/G2/DS4", file_id, "/G1/DS3",H5P_DEFAULT, H5P_DEFAULT)<0)
+ goto out;
+ /*
+ * Create a group named "/G1/G2" in the file.
+ */
+ if((group = H5Gcreate2(file_id, "/G1/G2", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT))<0)
+ goto out;
+
+ /*
+ * Create a soft link
+ */
+ if(H5Lcreate_soft("/G2", file_id, "/G1/G2/G5", H5P_DEFAULT, H5P_DEFAULT)<0)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+
+ /*
+ * Create a group named "/G1/G2/G6" in the file.
+ */
+ if((group = H5Gcreate2(file_id, "/G1/G2/G6", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT))<0)
+ goto out;
+
+ /*
+ * Create an external link
+ */
+ if(H5Lcreate_external( FILE_NAME4, "G1", group, "ExternalLink", H5P_DEFAULT, H5P_DEFAULT)<0)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+ /*
+ * Close the file.
+ */
+ status = H5Fclose (file_id);
+
+ /* Create another file for checking external links */
+
+ /**************************************************************
+ * The file structure should look like this:
+ *
+ * +----+
+ * | / |
+ * +----+
+ * |
+ * |
+ * |
+ * G1
+ * / \
+ * / \
+ * DS1 G2
+ * (dangled soft link to /G1/G20)
+ *
+ ****************************************************************/
+
+ /* Make external link file */
+ file_id = H5Fcreate(FILE_NAME4, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
+
+ /*
+ * Create a group named "G1" in the file.
+ */
+ if((group = H5Gcreate2(file_id, "G1", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT))<0)
+ goto out;
+ /*
+ * Create a dataset named "G1/DS1" in the file.
+ */
+ if(H5LTmake_dataset_string(group, "/G1/DS1", data_string_in)<0)
+ goto out;
+
+ /*
+ * Create a dangling soft link
+ */
+
+ if(H5Lcreate_soft("/G1/G2", file_id, "/G1/G20", H5P_DEFAULT, H5P_DEFAULT)<0)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+
+ H5Fclose(file_id);
+
+ /* Open input file */
+ if((file_id = H5Fopen(FILE_NAME3,H5F_ACC_RDONLY, H5P_DEFAULT))<0)
+ goto out;
+
+ /**************************************
+ * CHECK ABSOLUTE PATHS
+ **************************************/
+ if( (path_valid = H5LTpath_valid(file_id, "/G1", TRUE)) != TRUE) {
+ goto out;
+ }
+
+ if((path_valid = H5LTpath_valid(file_id, "/G1/DS1", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/DS3", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G5", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G2", TRUE)) != TRUE)
+ goto out;
+
+ /* check soft link points to a valid object*/
+ if( (path_valid = H5LTpath_valid(file_id, "/G2/DS4", TRUE)) != TRUE)
+ goto out;
+
+ /* check if path exist, but not the object */
+ if( (path_valid = H5LTpath_valid(file_id, "/G2/G7", FALSE)) != TRUE )
+ goto out;
+ /* check if path exist and if the object exists. It should fail
+ * since it is a dangling soft link
+ */
+ if( (path_valid = H5LTpath_valid(file_id, "/G2/G7", TRUE)) == TRUE)
+ goto out;
+
+ /* check soft links */
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G5/DS4", TRUE)) != TRUE)
+ goto out;
+
+ /**************************************
+ * CHECK RELATIVE PATHS
+ ***************************************/
+
+ if( (group = H5Gopen2(file_id, "/G1", H5P_DEFAULT)) < 0)
+ goto out;
+
+ /* The identifier (file id) is the object itself, i.e. "." */
+
+ if((path_valid = H5LTpath_valid(file_id, ".", FALSE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, ".", TRUE)) != TRUE)
+ goto out;
+
+ /* The identifier (group id) is the object itself, i.e. "." */
+
+ if( (path_valid = H5LTpath_valid(group, ".", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(group, "DS3", FALSE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(group, "DS3", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(group, "G2/G5", TRUE)) != TRUE)
+ goto out;
+
+ /* Check the "./" case */
+ if( (path_valid = H5LTpath_valid(group, "./DS3", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(group, "./G2/G5", TRUE)) != TRUE)
+ goto out;
+
+ /* Should fail, does not exist */
+ if( (path_valid = H5LTpath_valid(group, "./G2/G20", FALSE)) == TRUE)
+ goto out;
+
+ /* Should fail, does not exist */
+ if( (path_valid = H5LTpath_valid(group, "./G2/G20", TRUE)) == TRUE)
+ goto out;
+
+ if(H5Gclose(group)<0)
+ goto out;
+
+ /*****************************
+ * Check external links
+ *****************************/
+
+ /* The dangled external link path is valid */
+ if( (path_valid = H5LTpath_valid(file_id, "/DangledExternalLink", FALSE)) != TRUE)
+ goto out;
+
+ /* The file however does not exists, so the link dangles -> should return false */
+ if( (path_valid = H5LTpath_valid(file_id, "/DangledExternalLink", TRUE)) == TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G6/ExternalLink", FALSE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G6/ExternalLink", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G6/ExternalLink/DS1", TRUE)) != TRUE)
+ goto out;
+
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G6/ExternalLink/G20", FALSE)) != TRUE)
+ goto out;
+
+ /* Should fail, does not exist */
+ if( (path_valid = H5LTpath_valid(file_id, "/G1/G2/G6/ExternalLink/G20", TRUE)) == TRUE)
+ goto out;
+
+ if(H5Fclose(file_id)<0)
+ goto out;
+
+ PASSED();
+ return 0;
+
+ out:
+ H5_FAILED();
+ return -1;
+}
+
+
+/*-------------------------------------------------------------------------
* the main program
*-------------------------------------------------------------------------
*/
@@ -1659,7 +2129,7 @@ int main( void )
nerrors += test_attr();
/* test text-dtype functions */
- nerrors += test_text_dtype();
+ nerrors += test_valid_path();
/* check for errors */
if (nerrors)
@@ -1672,4 +2142,3 @@ error:
}
-
diff --git a/hl/test/test_packet.c b/hl/test/test_packet.c
index 3c258c1..9d3074d 100644
--- a/hl/test/test_packet.c
+++ b/hl/test/test_packet.c
@@ -72,7 +72,7 @@ static particle_t testPart[NRECORDS] = {
*/
static int cmp_par(size_t i, size_t j, particle_t *rbuf, particle_t *wbuf )
{
- if ( ( strcmp( rbuf[i].name, wbuf[j].name ) != 0 ) ||
+ if ( ( HDstrcmp( rbuf[i].name, wbuf[j].name ) != 0 ) ||
rbuf[i].lati != wbuf[j].lati ||
rbuf[i].longi != wbuf[j].longi ||
rbuf[i].pressure != wbuf[j].pressure ||
@@ -127,7 +127,7 @@ static int create_hl_table(hid_t fid)
/* Define field information */
const char *field_names[NFIELDS] =
- { "Name","Latitude", "Longitude", "Pressure", "Temperature" };
+ { "Name","Latitude", "Longitude", "Pressure", "Temperature" };
hid_t field_type[NFIELDS];
hid_t string_type;
hsize_t chunk_size = 10;
@@ -182,7 +182,7 @@ static int test_create_close(hid_t fid)
/* Create a datatype for the particle struct */
part_t = make_particle_type();
- assert(part_t != -1);
+ HDassert(part_t != -1);
/* Create the table */
table = H5PTcreate_fl(fid, PT_NAME, part_t, (hsize_t)100, -1);
@@ -460,7 +460,7 @@ static int test_big_table(hid_t fid)
/* Create a datatype for the particle struct */
part_t = make_particle_type();
- assert(part_t != -1);
+ HDassert(part_t != -1);
/* Create a new table */
table = H5PTcreate_fl(fid, "Packet Test Dataset2", part_t, (hsize_t)33, -1);
@@ -712,7 +712,7 @@ static int test_opaque(hid_t fid)
if ((part_t = H5Tcreate (H5T_OPAQUE, sizeof(particle_t) )) < 0 )
return -1;
- assert(part_t != -1);
+ HDassert(part_t != -1);
/* Tag the opaque datatype */
if ( H5Tset_tag(part_t, "Opaque Particle" ) < 0)
@@ -787,7 +787,7 @@ test_compress(void)
/* Create a datatype for the particle struct */
part_t = make_particle_type();
- assert(part_t != -1);
+ HDassert(part_t != -1);
/* Create a new table with compression level 8 */
table = H5PTcreate_fl(fid1, "Compressed Test Dataset", part_t, (hsize_t)80, 8);
@@ -1059,7 +1059,7 @@ int main(void)
/* create a file using default properties */
fid=H5Fcreate(TEST_FILE_NAME, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
- puts("Testing packet table");
+ HDputs("Testing packet table");
/* run tests */
if ( test_packet_table(fid) < 0)
diff --git a/hl/test/test_table.c b/hl/test/test_table.c
index 0fc4c84..e3e040e 100644
--- a/hl/test/test_table.c
+++ b/hl/test/test_table.c
@@ -129,8 +129,8 @@ static hid_t h5file_open(const char *fname, unsigned flags)
/* open */
if ((fid = H5Fopen(data_file,flags,H5P_DEFAULT))<0)
{
- fprintf(stderr,"Error: Cannot open file <%s>\n",data_file );
- exit(1);
+ HDfprintf(stderr,"Error: Cannot open file <%s>\n",data_file );
+ HDexit(1);
}
return fid;
@@ -142,16 +142,16 @@ static hid_t h5file_open(const char *fname, unsigned flags)
*/
static int cmp_par(hsize_t i, hsize_t j, particle_t *rbuf, particle_t *wbuf )
{
- if ( ( strcmp( rbuf[i].name, wbuf[j].name ) != 0 ) ||
+ if ( ( HDstrcmp( rbuf[i].name, wbuf[j].name ) != 0 ) ||
rbuf[i].lati != wbuf[j].lati ||
rbuf[i].longi != wbuf[j].longi ||
rbuf[i].pressure != wbuf[j].pressure ||
rbuf[i].temperature != wbuf[j].temperature )
{
- fprintf(stderr,"read and write buffers have differences\n");
- fprintf(stderr,"%s %ld %f %f %d\n",
+ HDfprintf(stderr,"read and write buffers have differences\n");
+ HDfprintf(stderr,"%s %ld %f %f %d\n",
rbuf[i].name,rbuf[i].longi,rbuf[i].pressure,rbuf[i].temperature,rbuf[i].lati);
- fprintf(stderr,"%s %ld %f %f %d\n",
+ HDfprintf(stderr,"%s %ld %f %f %d\n",
wbuf[j].name,wbuf[j].longi,wbuf[j].pressure,wbuf[j].temperature,wbuf[j].lati);
return -1;
}
@@ -495,9 +495,9 @@ static int test_table(hid_t fid, int do_write)
*-------------------------------------------------------------------------
*/
if(do_write)
- strcpy(tname,"table2");
+ HDstrcpy(tname,"table2");
else
- strcpy(tname,"table1");
+ HDstrcpy(tname,"table1");
rstart=0;
rrecords=8;
@@ -645,7 +645,7 @@ static int test_table(hid_t fid, int do_write)
wbufd[i].longi = wbuf[i].longi;
wbufd[i].pressure = wbuf[i].pressure;
wbufd[i].temperature = wbuf[i].temperature;
- strcpy(wbufd[i].name, wbuf[i].name );
+ HDstrcpy(wbufd[i].name, wbuf[i].name );
}
@@ -1027,9 +1027,9 @@ static int test_table(hid_t fid, int do_write)
rbuf[i].longi != position_in[i-NRECORDS_ADD+1].longi ||
rbuf[i].pressure != pressure_in[i-NRECORDS_ADD+1] )
{
- fprintf(stderr,"%ld %f %d\n",
+ HDfprintf(stderr,"%ld %f %d\n",
rbuf[i].longi,rbuf[i].pressure,rbuf[i].lati);
- fprintf(stderr,"%ld %f %d\n",
+ HDfprintf(stderr,"%ld %f %d\n",
position_in[i].longi,pressure_in[i],position_in[i].lati);
goto out;
}
@@ -1144,7 +1144,7 @@ static int test_table(hid_t fid, int do_write)
/* Compare the extracted table with the initial values */
for( i = 0; i < NRECORDS; i++ )
{
- if ( ( strcmp( namepre_out[i].name, namepre_in[i].name ) != 0 ) ||
+ if ( ( HDstrcmp( namepre_out[i].name, namepre_in[i].name ) != 0 ) ||
namepre_out[i].pressure != namepre_in[i].pressure ) {
goto out;
}
@@ -1153,7 +1153,7 @@ static int test_table(hid_t fid, int do_write)
/* reset buffer */
for( i = 0; i < NRECORDS; i++ )
{
- strcpy( namepre_out[i].name, "\0" );
+ HDstrcpy( namepre_out[i].name, "\0" );
namepre_out[i].pressure = -1;
}
@@ -1173,7 +1173,7 @@ static int test_table(hid_t fid, int do_write)
for( i = 0; i < 3; i++ )
{
hsize_t iistart = start;
- if ( ( strcmp( namepre_out[i].name, namepre_in[iistart+i].name ) != 0 ) ||
+ if ( ( HDstrcmp( namepre_out[i].name, namepre_in[iistart+i].name ) != 0 ) ||
namepre_out[i].pressure != namepre_in[iistart+i].pressure ) {
goto out;
}
@@ -1351,7 +1351,7 @@ static int test_table(hid_t fid, int do_write)
/* compare the extracted table with the initial values */
for( i = 0; i < NRECORDS; i++ )
{
- if ( ( strcmp( namepre_out[i].name, namepre_in[i].name ) != 0 ) ||
+ if ( ( HDstrcmp( namepre_out[i].name, namepre_in[i].name ) != 0 ) ||
namepre_out[i].pressure != namepre_in[i].pressure ) {
goto out;
}
@@ -1360,7 +1360,7 @@ static int test_table(hid_t fid, int do_write)
/* reset buffer */
for( i = 0; i < NRECORDS; i++ )
{
- strcpy( namepre_out[i].name, "\0" );
+ HDstrcpy( namepre_out[i].name, "\0" );
namepre_out[i].pressure = -1;
}
@@ -1382,7 +1382,7 @@ static int test_table(hid_t fid, int do_write)
for( i = 0; i < 3; i++ )
{
int iistart = (int) start;
- if ( ( strcmp( namepre_out[i].name, wbuf[iistart+i].name ) != 0 ) ||
+ if ( ( HDstrcmp( namepre_out[i].name, wbuf[iistart+i].name ) != 0 ) ||
namepre_out[i].pressure != wbuf[iistart+i].pressure ) {
goto out;
}
@@ -1423,7 +1423,7 @@ static int test_table(hid_t fid, int do_write)
/* compare the extracted table with the original array */
for( i = 0; i < NRECORDS; i++ )
{
- if ( ( strcmp( rbuf2[i].name, wbuf[i].name ) != 0 ) ||
+ if ( ( HDstrcmp( rbuf2[i].name, wbuf[i].name ) != 0 ) ||
rbuf2[i].lati != wbuf[i].lati ||
rbuf2[i].longi != wbuf[i].longi ||
rbuf2[i].pressure != wbuf[i].pressure ||
@@ -1464,7 +1464,7 @@ static int test_table(hid_t fid, int do_write)
/* compare the extracted table with the original array */
for( i = 0; i < NRECORDS; i++ )
{
- if ( ( strcmp( rbuf3[i].name, wbuf[i].name ) != 0 ) ||
+ if ( ( HDstrcmp( rbuf3[i].name, wbuf[i].name ) != 0 ) ||
rbuf3[i].lati != wbuf[i].lati ||
rbuf3[i].longi != wbuf[i].longi ||
rbuf3[i].temperature != wbuf[i].temperature ) {
@@ -1509,10 +1509,10 @@ static int test_table(hid_t fid, int do_write)
TESTING2("getting field info");
/* alocate */
- names_out = (char**) malloc( sizeof(char*) * (size_t)NFIELDS );
+ names_out = (char**) HDmalloc( sizeof(char*) * (size_t)NFIELDS );
for ( i = 0; i < NFIELDS; i++)
{
- names_out[i] = (char*) malloc( sizeof(char) * 255 );
+ names_out[i] = (char*) HDmalloc( sizeof(char) * 255 );
}
/* Get field info */
@@ -1521,7 +1521,7 @@ static int test_table(hid_t fid, int do_write)
for ( i = 0; i < NFIELDS; i++)
{
- if ( (strcmp( field_names[i], names_out[i] ) != 0)) {
+ if ( (HDstrcmp( field_names[i], names_out[i] ) != 0)) {
goto out;
}
}
@@ -1529,9 +1529,9 @@ static int test_table(hid_t fid, int do_write)
/* release */
for ( i = 0; i < NFIELDS; i++)
{
- free ( names_out[i] );
+ HDfree ( names_out[i] );
}
- free ( names_out );
+ HDfree ( names_out );
PASSED();
@@ -1564,7 +1564,7 @@ int main(void)
/* create a file using default properties */
fid=H5Fcreate("test_table.h5",H5F_ACC_TRUNC,H5P_DEFAULT,H5P_DEFAULT);
- puts("Testing table with file creation mode (read/write in native architecture):");
+ HDputs("Testing table with file creation mode (read/write in native architecture):");
/* test, do write */
if (test_table(fid,1)<0)
@@ -1577,7 +1577,7 @@ int main(void)
* test2: open a file written in test1 on a big-endian machine
*-------------------------------------------------------------------------
*/
- puts("Testing table with file open mode (read big-endian data):");
+ HDputs("Testing table with file open mode (read big-endian data):");
fid=h5file_open(TEST_FILE_BE,flags);
@@ -1592,7 +1592,7 @@ int main(void)
* test3: open a file written in test1 on a little-endian machine
*-------------------------------------------------------------------------
*/
- puts("Testing table with file open mode (read little-endian data):");
+ HDputs("Testing table with file open mode (read little-endian data):");
fid=h5file_open(TEST_FILE_LE,flags);
@@ -1607,7 +1607,7 @@ int main(void)
* test4: open a file written in test1 on the Cray T3 machine
*-------------------------------------------------------------------------
*/
- puts("Testing table with file open mode (read Cray data):");
+ HDputs("Testing table with file open mode (read Cray data):");
fid=h5file_open(TEST_FILE_CRAY,flags);