519 |
|
off_t nbytes = *(off_t *)p; |
520 |
|
|
521 |
|
if (sop->reclen > 1) |
522 |
< |
nbytes = nbytes * sop->reclen; |
522 |
> |
nbytes *= (off_t)sop->reclen; |
523 |
|
if (fseeko(sop->ofp, nbytes, SEEK_CUR) < 0) { |
524 |
|
sprintf(errmsg, "seek error on file '%s'", e->key); |
525 |
|
error(SYSTEM, errmsg); |
588 |
|
sprintf(errmsg, "missing recover file '%s'", |
589 |
|
oname); |
590 |
|
error(WARNING, errmsg); |
591 |
+ |
lastout = 0; |
592 |
|
break; |
593 |
|
} |
594 |
|
nvals = lseek(fileno(sop->ofp), 0, SEEK_END); |
621 |
|
} |
622 |
|
if (!lastout) { /* empty output */ |
623 |
|
error(WARNING, "no previous data to recover"); |
624 |
< |
lu_done(&ofiletab); /* reclose all outputs */ |
624 |
> |
/* reclose all outputs */ |
625 |
> |
lu_doall(&ofiletab, &myclose, NULL); |
626 |
|
return; |
627 |
|
} |
628 |
|
} |