diff options
author | Larry Knox <lrknox@hdfgroup.org> | 2009-10-20 15:08:56 (GMT) |
---|---|---|
committer | Larry Knox <lrknox@hdfgroup.org> | 2009-10-20 15:08:56 (GMT) |
commit | a99a73d20ecd7ed2c9c65a2979f600f805d01099 (patch) | |
tree | 252d65e11b3542322b0e73b510a1a3ef3036b7c4 /test/vfd.c | |
parent | 4feddbbbcc655ba2ff2e07b10647bd12f06d2d84 (diff) | |
download | hdf5-a99a73d20ecd7ed2c9c65a2979f600f805d01099.zip hdf5-a99a73d20ecd7ed2c9c65a2979f600f805d01099.tar.gz hdf5-a99a73d20ecd7ed2c9c65a2979f600f805d01099.tar.bz2 |
[svn-r17688] Merge make local copy of svn test data files for write access from v1.8 to trunk.
Tested:
amani, jam, linew (h5committest).
Diffstat (limited to 'test/vfd.c')
-rw-r--r-- | test/vfd.c | 33 |
1 files changed, 3 insertions, 30 deletions
@@ -28,7 +28,6 @@ #define FAMILY_SIZE2 (5*KB) #define MULTI_SIZE 128 #define CORE_INCREMENT (4*KB) -#define FILE_COPY_BUF_SIZE 4096 /*Macros for Direct VFD*/ #define MBOUNDARY 512 @@ -809,11 +808,7 @@ test_family_compat(void) char filename[1024]; char pathname[1024], pathname_individual[1024]; char newname[1024], newname_individual[1024]; - char *srcdir = getenv("srcdir"); /*where the src code is located*/ FILE *tmp_fp, *old_fp; /* Pointers to temp & old files */ - void *copy_buf; /* Pointer to buffer for copying data */ - size_t written; /* Amount of data written to new file */ - size_t read_in; /* Amount of data read in from old file */ int counter = 0; TESTING("FAMILY file driver backward compatibility"); @@ -828,45 +823,23 @@ test_family_compat(void) h5_fixname(FILENAME[3], fapl, newname, sizeof newname); pathname[0] = '\0'; - /* Generate correct name for test file by prepending the source path */ - if(srcdir && ((HDstrlen(srcdir) + HDstrlen(filename) + 1) < sizeof(pathname))) { - HDstrcpy(pathname, srcdir); - HDstrcat(pathname, "/"); - } HDstrcat(pathname, filename); /* The following code makes the copies of the family files in the source directory. * Since we're going to open the files with write mode, this protects the original * files. */ - if(NULL == (copy_buf = HDmalloc((size_t)FILE_COPY_BUF_SIZE))) TEST_ERROR - sprintf(newname_individual, newname, counter); sprintf(pathname_individual, pathname, counter); - /* Open the original files until no more left. Copy the content into the new files. */ - while((old_fp = HDfopen(pathname_individual,"rb"))) { - /* Open the new file */ - if(NULL == (tmp_fp = fopen(newname_individual,"wb"))) TEST_ERROR - - /* Copy data from the old file to the new file */ - while((read_in = HDfread(copy_buf, (size_t)1, (size_t)FILE_COPY_BUF_SIZE, old_fp)) > 0) - /* Write the data to the new file */ - if(read_in != (written = HDfwrite(copy_buf, (size_t)1, read_in, tmp_fp))) TEST_ERROR - - /* Close the old file */ - if(HDfclose(old_fp)) TEST_ERROR - - /* Close the new file */ - if(HDfclose(tmp_fp)) TEST_ERROR - + while (h5_make_local_copy(pathname_individual, newname_individual) >= 0) { counter++; sprintf(newname_individual, newname, counter); sprintf(pathname_individual, pathname, counter); } - /* Free the copy buffer */ - free(copy_buf); + if (old_fp = HDfopen(pathname_individual,"rb") + && (tmp_fp = fopen(newname_individual,"wb"))) TEST_ERROR /* Make sure we can open the file. Use the read and write mode to flush the * superblock. */ |