Annotation of 42BSD/ingres/source/iutil/newlino.c, revision 1.1.1.1

1.1       root        1: # include      <ingres.h>
                      2: # include      <access.h>
                      3: # include      <sccs.h>
                      4: 
                      5: SCCSID(@(#)newlino.c   7.1     2/5/81)
                      6: 
                      7: /*
                      8: ** newlino finds a free line number which it returns and adjusts
                      9: **     the next line counter (Nxtlino) by the length of the tuple (len).
                     10: **     This routine is used to recover unused sections of the
                     11: **     line number table (Acc_head->linetab).
                     12: */
                     13: 
                     14: newlino(len)
                     15: int    len;
                     16: {
                     17:        register int    newlno, nextlno;
                     18:        register short  *lp;
                     19: 
                     20:        nextlno = Acc_head->nxtlino;
                     21:        lp = &Acc_head->linetab[0];
                     22:        for (newlno = 0; newlno < nextlno; newlno++)
                     23:        {
                     24:                if (*lp == 0)
                     25:                {
                     26:                        /* found a free line number */
                     27:                        *lp = Acc_head->linetab[-nextlno];
                     28:                        Acc_head->linetab[-nextlno] += len;
                     29:                        return (newlno);
                     30:                }
                     31:                lp--;
                     32:        }
                     33: 
                     34:        /* no free line numbers. use nxtlino */
                     35:        Acc_head->linetab[-(nextlno + 1)] = *lp + len;
                     36:        Acc_head->nxtlino++;
                     37:        return (nextlno);
                     38: }

unix.superglobalmegacorp.com

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