-$Id: CHANGES,v 1.165 2002/02/25 13:54:52 stelian Exp $
+$Id: CHANGES,v 1.166 2002/02/27 09:47:48 stelian Exp $
Changes between versions 0.4b27 and 0.4b28 (released ?????????????????)
=======================================================================
version...). Thanks to Andrew Donkin <ard@waikato.ac.nz> for
reporting the build failures.
+4. Fixed a performance problem with the QFA file creation in
+ dump, which made unnecessary seeks on the tape slowing down
+ the dump. Thanks to Andrew Donkin <ard@waikato.ac.nz> for
+ reporting this issue.
+
Changes between versions 0.4b26 and 0.4b27 (released February 15, 2002)
=======================================================================
#ifndef lint
static const char rcsid[] =
- "$Id: tape.c,v 1.63 2002/02/21 09:25:31 stelian Exp $";
+ "$Id: tape.c,v 1.64 2002/02/27 09:47:48 stelian Exp $";
#endif /* not lint */
#include <config.h>
#ifdef USE_QFA
if (gTapeposfd >= 0) {
int i;
+ int firstpass = 1;
for (i = 0; i < ntrec; ++i) {
uspclptr = (union u_spcl *)&slp->tblock[i];
spclptr = &uspclptr->s_spcl;
(spclptr->c_date == gThisDumpDate)) {
/* if an error occured previously don't
* try again */
- if (gtperr == 0) {
- if ((gtperr = GetTapePos(&curtapepos)) == 0)
- MkTapeString(spclptr, curtapepos);
+ if (firstpass) {
+ firstpass = 0;
+ if (gtperr == 0)
+ gtperr = GetTapePos(&curtapepos);
}
+ if (gtperr == 0)
+ MkTapeString(spclptr, curtapepos);
}
}
}