Annotation of 42BSD/ingres/source/iutil/writebatch.c, revision 1.1

1.1     ! root        1: # include      <ingres.h>
        !             2: # include      <aux.h>
        !             3: # include      <symbol.h>
        !             4: # include      <access.h>
        !             5: # include      <batch.h>
        !             6: # include      <sccs.h>
        !             7: 
        !             8: SCCSID(@(#)writebatch.c        7.1     2/5/81)
        !             9: 
        !            10: /*
        !            11: **  WRBATCH -- write batch file
        !            12: */
        !            13: 
        !            14: wrbatch(cp, count)
        !            15: char   *cp;
        !            16: int    count;
        !            17: {
        !            18:        register char   *c;
        !            19:        register int    size, cnt;
        !            20: 
        !            21:        cnt = count;
        !            22:        c = cp;
        !            23: #      ifdef xATR1
        !            24:        if (tTf(25, 8))
        !            25:                printf("wrbatch:%d (%d)\n", cnt, Batch_cnt);
        !            26: #      endif
        !            27: 
        !            28:        while (cnt)
        !            29:        {
        !            30:                Batch_dirty = TRUE;     /* mark this buffer as dirty */
        !            31:                if (cnt + Batch_cnt > BATCHSIZE)
        !            32:                        size = BATCHSIZE - Batch_cnt;
        !            33:                else
        !            34:                        size = cnt;
        !            35:                bmove(c, &Batchbuf.bbuf[Batch_cnt], size);
        !            36:                c += size;
        !            37:                Batch_cnt += size;
        !            38:                cnt -= size;
        !            39:                if (Batch_cnt == BATCHSIZE)
        !            40:                        flushbatch();
        !            41:        }
        !            42: }
        !            43: /*
        !            44: **  FLUSHBATCH -- flush batch file
        !            45: */
        !            46: 
        !            47: flushbatch()
        !            48: {
        !            49:        register int    i;
        !            50: 
        !            51:        if (Batch_cnt)
        !            52:        {
        !            53: #              ifdef xATR1
        !            54:                if (tTf(25, 9))
        !            55:                        printf("flushing %d\n", Batch_cnt + IDSIZE);
        !            56: #              endif
        !            57:                if ((i = write(Batch_fp, &Batchbuf, Batch_cnt + IDSIZE)) != Batch_cnt + IDSIZE)
        !            58:                        syserr("flushbatch:can't write %d", i);
        !            59:                Batch_cnt = 0;
        !            60:        }
        !            61: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.