@ -79,17 +79,23 @@ extern int cacheflush(char *addr, int nbytes, int cache);
# define CACHEFLUSH(addr, bytes, cache)
# define CACHEFLUSH(addr, bytes, cache)
# endif
# endif
# include <errno.h>
# include <errno.h>
# include <limits.h>
# include <limits.h>
# include <stddef.h>
# include <stddef.h>
# include <inttypes.h>
# include <inttypes.h>
# include <stdio.h>
# include <stdio.h>
# include <stdlib.h>
# include <stdlib.h>
# include <malloc.h>
# include <string.h>
# include <string.h>
# include <time.h>
# include <time.h>
# include <unistd.h>
# include <unistd.h>
# if defined(__sun)
/* Most platforms have posix_memalign, older may only have memalign */
# define HAVE_MEMALIGN 1
# include <malloc.h>
# endif
# if !(defined(BYTE_ORDER) || defined(__BYTE_ORDER))
# if !(defined(BYTE_ORDER) || defined(__BYTE_ORDER))
# include <netinet/in.h>
# include <netinet/in.h>
# include <resolv.h> /* defines BYTE_ORDER on HPUX and Solaris */
# include <resolv.h> /* defines BYTE_ORDER on HPUX and Solaris */
@ -8480,9 +8486,15 @@ mdb_env_copyfd1(MDB_env *env, HANDLE fd)
# else
# else
pthread_mutex_init ( & my . mc_mutex , NULL ) ;
pthread_mutex_init ( & my . mc_mutex , NULL ) ;
pthread_cond_init ( & my . mc_cond , NULL ) ;
pthread_cond_init ( & my . mc_cond , NULL ) ;
# ifdef HAVE_MEMALIGN
my . mc_wbuf [ 0 ] = memalign ( env - > me_os_psize , MDB_WBUF * 2 ) ;
my . mc_wbuf [ 0 ] = memalign ( env - > me_os_psize , MDB_WBUF * 2 ) ;
if ( my . mc_wbuf [ 0 ] = = NULL )
if ( my . mc_wbuf [ 0 ] = = NULL )
return errno ;
return errno ;
# else
rc = posix_memalign ( ( void * * ) & my . mc_wbuf [ 0 ] , env - > me_os_psize , MDB_WBUF * 2 ) ;
if ( rc )
return rc ;
# endif
# endif
# endif
memset ( my . mc_wbuf [ 0 ] , 0 , MDB_WBUF * 2 ) ;
memset ( my . mc_wbuf [ 0 ] , 0 , MDB_WBUF * 2 ) ;
my . mc_wbuf [ 1 ] = my . mc_wbuf [ 0 ] + MDB_WBUF ;
my . mc_wbuf [ 1 ] = my . mc_wbuf [ 0 ] + MDB_WBUF ;