Subversion Repositories wimsdev

Rev

Rev 3808 | Rev 8161 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3808 Rev 3813
Line 95... Line 95...
95
int mt_this(struct block *blk, char *start, int level)
95
int mt_this(struct block *blk, char *start, int level)
96
{
96
{
97
    int r;
97
    int r;
98
    if(level > MAX_LEVELS) error("level_overflow %.20s",start);
98
    if(level > MAX_LEVELS) error("level_overflow %.20s",start);
99
    start=find_word_start(start);
99
    start=find_word_start(start);
100
    if(debug>=2) fprintf(stderr,"lvl=%d. Checking against block %ld for %.10s.\n",level,blk-blockbuf,start);
100
    if(debug>=2) fprintf(stderr,"lvl=%d. Checking against block %d for %.10s.\n",level,(int)(blk-blockbuf),start);
101
    r = blk->fn(blk,start,level);
101
    r = blk->fn(blk,start,level);
102
    if(debug) fprintf(stderr,"lvl=%d. Tested %d block %ld for %.10s.\n",level,r,blk-blockbuf,start);
102
    if(debug) fprintf(stderr,"lvl=%d. Tested %d block %d for %.10s.\n",level,r,(int)(blk-blockbuf),start);
103
    return r;
103
    return r;
104
}
104
}
105
 
105
 
106
int mt_next(struct block *blk, char *start, int level)
106
int mt_next(struct block *blk, char *start, int level)
107
{
107
{
Line 112... Line 112...
112
        do {
112
        do {
113
            next=npool[currnpool].nextblock; currnpool=npool[currnpool].last;
113
            next=npool[currnpool].nextblock; currnpool=npool[currnpool].last;
114
        }
114
        }
115
        while (next==-2 && currnpool>0);
115
        while (next==-2 && currnpool>0);
116
        if(next==-2) error("internal_error npool disorder");
116
        if(next==-2) error("internal_error npool disorder");
117
        if(debug>=3) fprintf(stderr,"Calling macro %ld: next=%d.\n",
117
        if(debug>=3) fprintf(stderr,"Calling macro %d: next=%d.\n",
118
                             blk-blockbuf,next);
118
                             (int)(blk-blockbuf),next);
119
    }
119
    }
120
    if(next<0) {
120
    if(next<0) {
121
        if(*start) return 0; else return 1;
121
        if(*start) return 0; else return 1;
122
    }
122
    }
123
    r=mt_this(blockbuf+next,start,level);
123
    r=mt_this(blockbuf+next,start,level);