(init_hash): Don't use stat() if it doesn't provide the preferred
authordrepper <drepper>
Sun, 10 Aug 1997 16:55:55 +0000 (16:55 +0000)
committerdrepper <drepper>
Sun, 10 Aug 1997 16:55:55 +0000 (16:55 +0000)
block size.

db/hash/hash.c

index 0267da8..4ccb992 100644 (file)
@@ -282,7 +282,9 @@ init_hash(hashp, file, info)
        const char *file;
        HASHINFO *info;
 {
        const char *file;
        HASHINFO *info;
 {
+#ifdef _STATBUF_ST_BLKSIZE
        struct stat statbuf;
        struct stat statbuf;
+#endif
        int nelem;
 
        nelem = 1;
        int nelem;
 
        nelem = 1;
@@ -299,14 +301,14 @@ init_hash(hashp, file, info)
        memset(hashp->BITMAPS, 0, sizeof (hashp->BITMAPS));
 
        /* Fix bucket size to be optimal for file system */
        memset(hashp->BITMAPS, 0, sizeof (hashp->BITMAPS));
 
        /* Fix bucket size to be optimal for file system */
+#ifdef _STATBUF_ST_BLKSIZE
        if (file != NULL) {
                if (stat(file, &statbuf))
                        return (NULL);
        if (file != NULL) {
                if (stat(file, &statbuf))
                        return (NULL);
-#if defined _STATBUF_ST_BLKSIZE
                hashp->BSIZE = statbuf.st_blksize;
                hashp->BSIZE = statbuf.st_blksize;
-#endif
                hashp->BSHIFT = __hash_log2(hashp->BSIZE);
        }
                hashp->BSHIFT = __hash_log2(hashp->BSIZE);
        }
+#endif
 
        if (info) {
                if (info->bsize) {
 
        if (info) {
                if (info->bsize) {