From: Adam Dickmeiss Date: Fri, 2 Aug 2002 10:34:27 +0000 (+0000) Subject: mf_write fix. version update X-Git-Tag: ZEBRA.1.2~1 X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=commitdiff_plain;h=c3606d38ea186bd31331c474a4ddf5539656d99c;p=idzebra-moved-to-github.git mf_write fix. version update --- diff --git a/bfile/mfile.c b/bfile/mfile.c index f24491e..8b67521 100644 --- a/bfile/mfile.c +++ b/bfile/mfile.c @@ -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", diff --git a/configure.in b/configure.in index f255547..929dc6b 100644 --- a/configure.in +++ b/configure.in @@ -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 diff --git a/include/zebraver.h b/include/zebraver.h index e94c519..d372668 100644 --- a/include/zebraver.h +++ b/include/zebraver.h @@ -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