mf_write fix. version update
authorAdam Dickmeiss <adam@indexdata.dk>
Fri, 2 Aug 2002 10:34:27 +0000 (10:34 +0000)
committerAdam Dickmeiss <adam@indexdata.dk>
Fri, 2 Aug 2002 10:34:27 +0000 (10:34 +0000)
bfile/mfile.c
configure.in
include/zebraver.h

index f24491e..8b67521 100644 (file)
@@ -4,7 +4,10 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: mfile.c,v $
- * Revision 1.41.2.1  2002-07-23 12:33:21  adam
+ * Revision 1.41.2.2  2002-08-02 10:34:27  adam
+ * mf_write fix. version update
+ *
+ * Revision 1.41.2.1  2002/07/23 12:33:21  adam
  * Towards 1.1.3
  *
  * Revision 1.41.4.1  2002/07/23 09:32:41  adam
@@ -601,10 +604,11 @@ int mf_write(MFile mf, int no, int offset, int nbytes, const void *buf)
     /* file needs to grow */
     while (ps >= mf->files[mf->cur_file].blocks)
     {
+        off_t needed = (ps - mf->files[mf->cur_file].blocks + 1) *
+                       mf->blocksize;
        /* file overflow - allocate new file */
        if (mf->files[mf->cur_file].dir->max_bytes >= 0 &&
-           (ps - mf->files[mf->cur_file].blocks + 1) * mf->blocksize >
-           mf->files[mf->cur_file].dir->avail_bytes)
+           needed > mf->files[mf->cur_file].dir->avail_bytes)
        {
            /* cap off file? */
            if ((nblocks = mf->files[mf->cur_file].dir->avail_bytes /
@@ -630,7 +634,7 @@ int mf_write(MFile mf, int no, int offset, int nbytes, const void *buf)
            /* get other bit */
            logf (LOG_DEBUG, "Creating new file.");
            for (dp = mf->ma->dirs; dp && dp->max_bytes >= 0 &&
-               dp->avail_bytes < mf->min_bytes_creat; dp = dp->next);
+               dp->avail_bytes < needed; dp = dp->next);
            if (!dp)
            {
                logf (LOG_FATAL, "Cannot allocate more space for %s",
index f255547..929dc6b 100644 (file)
@@ -1,5 +1,5 @@
 dnl Zebra, Index Data Aps, 1994-2002
-dnl $Id: configure.in,v 1.29.2.2 2002-07-23 12:33:21 adam Exp $
+dnl $Id: configure.in,v 1.29.2.3 2002-08-02 10:34:27 adam Exp $
 dnl
 AC_INIT(include/zebraver.h)
 AC_MSG_CHECKING(for package)
@@ -7,12 +7,12 @@ if test -r ${srcdir}/LICENSE.zmbol; then
        AC_MSG_RESULT([Z'mbol])
        PROGPREFIX=zmbol
        AC_DEFINE(ZMBOL,1)
-       AM_INIT_AUTOMAKE(zmbol,1.1.3)
+       AM_INIT_AUTOMAKE(zmbol,1.2)
 else
        AC_MSG_RESULT([Zebra])
        PROGPREFIX=zebra
        AC_DEFINE(ZMBOL,0)
-       AM_INIT_AUTOMAKE(zebra,1.1.3)
+       AM_INIT_AUTOMAKE(zebra,1.2)
        if test ! -r ${srcdir}/isam; then
                mkdir ${srcdir}/isam
        fi
index e94c519..d372668 100644 (file)
@@ -2,13 +2,13 @@
  * Copyright (C) 1994-2002, Index Data
  * All rights reserved.
  *
- * $Id: zebraver.h,v 1.18.2.2 2002-07-23 12:33:22 adam Exp $
+ * $Id: zebraver.h,v 1.18.2.3 2002-08-02 10:34:27 adam Exp $
  */
 
 #ifndef ZEBRAVER
-#define ZEBRAVER "1.1.3"
+#define ZEBRAVER "1.2"
 #endif
 
 #ifndef ZEBRADATE
-#define ZEBRADATE "$Date: 2002-07-23 12:33:22 $"
+#define ZEBRADATE "$Date: 2002-08-02 10:34:27 $"
 #endif