From f5d5e9e2ff980545217a4f9efb6a4ff1ac90f8b9 Mon Sep 17 00:00:00 2001 From: Albert Cheng Date: Fri, 19 Apr 2002 02:20:41 -0500 Subject: [svn-r5205] Purpose: Code cleanup Description: Platform dependent code related to the struct stat and fstat calls polluted source codes. Hard to maintain. Solution: Platform dependent code are moved to H5private.h and then internal code can #include H5private.h. Repeat those macro definition for the stdio and multi drivers since they area examples for writing a virtual file driver. They must not use any internal code. Platforms tested: eirene (parallel), modi4 (serial including gass driver.) --- perform/overhead.c | 3 ++- perform/pio_engine.c | 2 +- perform/pio_perf.h | 1 + src/H5D.c | 1 + src/H5FDgass.c | 6 +----- src/H5FDlog.c | 4 +--- src/H5FDsec2.c | 10 ++++------ src/H5private.h | 3 +++ test/big.c | 2 +- test/h5test.c | 2 +- testpar/testphdf5.c | 2 +- 11 files changed, 17 insertions(+), 19 deletions(-) diff --git a/perform/overhead.c b/perform/overhead.c index b0546ba..903776e 100644 --- a/perform/overhead.c +++ b/perform/overhead.c @@ -11,6 +11,7 @@ /* See H5private.h for how to include headers */ #undef NDEBUG #include "hdf5.h" +#include "H5private.h" #ifdef H5_STDC_HEADERS # include @@ -186,7 +187,7 @@ test(fill_t fill_style, const double splits[], int mdc_nelmts; /*num meta objs to cache*/ hsize_t i; int j; - struct stat sb; + h5_stat_t sb; if (!had) had = calloc((size_t)cur_size[0], sizeof(int)); if ((fapl=H5Pcreate(H5P_FILE_ACCESS))<0) goto error; diff --git a/perform/pio_engine.c b/perform/pio_engine.c index efcfa98..5a796e7 100644 --- a/perform/pio_engine.c +++ b/perform/pio_engine.c @@ -412,7 +412,7 @@ pio_create_filename(iotype iot, const char *base_name, char *fullname, size_t si if ((strlen(fullname) + strlen(base_name) + 1) < size) { /* Append the base_name with a slash first. Multiple slashes are * handled below. */ - struct stat buf; + h5_stat_t buf; if (stat(fullname, &buf) < 0) /* The directory doesn't exist just yet */ diff --git a/perform/pio_perf.h b/perform/pio_perf.h index 3c60756..531fc4b 100644 --- a/perform/pio_perf.h +++ b/perform/pio_perf.h @@ -8,6 +8,7 @@ #define PIO_PERF_H__ #include "pio_timer.h" +#include "H5private.h" typedef enum iotype_ { RAW, diff --git a/src/H5D.c b/src/H5D.c index eb52354..3a0d024 100644 --- a/src/H5D.c +++ b/src/H5D.c @@ -4018,6 +4018,7 @@ H5Dset_extent(hid_t dset_id, const hsize_t *size) H5D_t *dset = NULL; FUNC_ENTER(H5Dset_extent, FAIL); + H5TRACE2("e","i*h",dset_id,size); /* Check args */ if(H5I_DATASET != H5I_get_type(dset_id) diff --git a/src/H5FDgass.c b/src/H5FDgass.c index 5ef425a..c43843e 100644 --- a/src/H5FDgass.c +++ b/src/H5FDgass.c @@ -332,11 +332,7 @@ H5FD_gass_open(const char *name, unsigned flags, hid_t fapl_id, H5FD_gass_fapl_t _fa; char *filename = (char *) H5MM_malloc(80 * sizeof(char)); H5P_genplist_t *plist; /* Property list pointer */ -#ifdef WIN32 - struct _stati64 sb; -#else - struct stat sb; -#endif + h5_stat_t sb; FUNC_ENTER(H5FD_gass_open, NULL); diff --git a/src/H5FDlog.c b/src/H5FDlog.c index ee5dc14..63f2dec 100644 --- a/src/H5FDlog.c +++ b/src/H5FDlog.c @@ -475,10 +475,8 @@ H5FD_log_open(const char *name, unsigned flags, hid_t fapl_id, HFILE filehandle; struct _BY_HANDLE_FILE_INFORMATION fileinfo; int results; - struct _stati64 sb; -#else - struct stat sb; #endif + h5_stat_t sb; H5P_genplist_t *plist; /* Property list */ FUNC_ENTER(H5FD_log_open, NULL); diff --git a/src/H5FDsec2.c b/src/H5FDsec2.c index 8841b2b..026f27a 100644 --- a/src/H5FDsec2.c +++ b/src/H5FDsec2.c @@ -273,13 +273,11 @@ H5FD_sec2_open(const char *name, unsigned flags, hid_t UNUSED fapl_id, int fd; H5FD_sec2_t *file=NULL; #ifdef WIN32 - HFILE filehandle; - struct _BY_HANDLE_FILE_INFORMATION fileinfo; - int results; - struct _stati64 sb; -#else - struct stat sb; + HFILE filehandle; + struct _BY_HANDLE_FILE_INFORMATION fileinfo; + int results; #endif + h5_stat_t sb; FUNC_ENTER(H5FD_sec2_open, NULL); diff --git a/src/H5private.h b/src/H5private.h index e8c5056..47d44cd 100644 --- a/src/H5private.h +++ b/src/H5private.h @@ -562,10 +562,13 @@ __DLL__ int HDfprintf (FILE *stream, const char *fmt, ...); /* fscanf() variable arguments */ #define HDfseek(F,O,W) fseek(F,O,W) #define HDfsetpos(F,P) fsetpos(F,P) +/* definitions related to the file stat utilities */ #ifdef WIN32 #define HDfstat(F,B) _fstati64(F,B) +typedef struct _stati64 h5_stat_t; #else #define HDfstat(F,B) fstat(F,B) +typedef struct stat h5_stat_t; #endif #define HDftell(F) ftell(F) #define HDfwrite(M,Z,N,F) fwrite(M,Z,N,F) diff --git a/test/big.c b/test/big.c index 406e5c0..fcb34a3 100644 --- a/test/big.c +++ b/test/big.c @@ -74,7 +74,7 @@ static int is_sparse(void) { int fd; - struct stat sb; + h5_stat_t sb; if ((fd=open("x.h5", O_RDWR|O_TRUNC|O_CREAT, 0666))<0) return 0; if (lseek(fd, (off_t)(1024*1024), SEEK_SET)!=1024*1024) return 0; diff --git a/test/h5test.c b/test/h5test.c index 7a1fad5..2f8e183 100644 --- a/test/h5test.c +++ b/test/h5test.c @@ -319,7 +319,7 @@ h5_fixname(const char *base_name, hid_t fapl, char *fullname, size_t size) if (HDstrlen(fullname) + HDstrlen(base_name) + 1 < size) { /* Append the base_name with a slash first. Multiple slashes are * handled below. */ - struct stat buf; + h5_stat_t buf; if (HDstat(fullname, &buf) < 0) /* The directory doesn't exist just yet */ diff --git a/testpar/testphdf5.c b/testpar/testphdf5.c index aa1b349..db507b8 100644 --- a/testpar/testphdf5.c +++ b/testpar/testphdf5.c @@ -50,7 +50,7 @@ void pause_proc(void) { int pid; - struct stat statbuf; + h5_stat_t statbuf; char greenlight[] = "go"; int maxloop = 10; int loops = 0; -- cgit v0.12