X-Git-Url: https://git.wh0rd.org/?p=dump.git;a=blobdiff_plain;f=dump%2Ftape.c;h=39d8b4caae4023890c9be13f6604ac8faf851391;hp=125b15884074869ed1d7b4b4adcf0c58bfcf18f0;hb=7ad0e4095900bf99e57eedf254d7162ef5112f43;hpb=35952b8fbb9df4f18fe7c470dc62ed318d4ce695 diff --git a/dump/tape.c b/dump/tape.c index 125b158..39d8b4c 100644 --- a/dump/tape.c +++ b/dump/tape.c @@ -41,7 +41,7 @@ #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.65 2002/03/11 10:17:43 stelian Exp $"; #endif /* not lint */ #include @@ -71,9 +71,6 @@ int write(), read(); #include #include #ifdef __linux__ -#include -#undef atomic_read /* this get wrongly defined in kernel */ - /* headers and we don't want it */ #ifdef HAVE_EXT2FS_EXT2_FS_H #include #else @@ -1234,6 +1231,7 @@ doslave(int cmd, int slave_number, int first) #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; @@ -1243,10 +1241,13 @@ doslave(int cmd, int slave_number, int first) (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); } } }