View | Details | Raw Unified | Return to bug 192108 | Differences between
and this patch

Collapse All | Expand All

(-)process.c (-18 / +26 lines)
Lines 288-311 Link Here
288
		r = 1;
288
		r = 1;
289
	else if (cp->a2)
289
	else if (cp->a2)
290
		if (cp->startline > 0) {
290
		if (cp->startline > 0) {
291
			if (MATCH(cp->a2)) {
291
                        switch (cp->a2->type) {
292
				cp->startline = 0;
292
                        case AT_RELLINE:
293
				lastaddr = 1;
293
                                if (linenum - cp->startline <= cp->a2->u.l)
294
				r = 1;
294
                                        r = 1;
295
			} else if (linenum - cp->startline <= cp->a2->u.l)
295
                                else {
296
				r = 1;
296
				        cp->startline = 0;
297
			else if ((cp->a2->type == AT_LINE &&
297
				        r = 0;
298
				   linenum > cp->a2->u.l) ||
298
                                }
299
				   (cp->a2->type == AT_RELLINE &&
299
                                break;
300
				   linenum - cp->startline > cp->a2->u.l)) {
300
                        default:
301
				/*
301
                                if (MATCH(cp->a2)) {
302
				 * We missed the 2nd address due to a branch,
302
                                        cp->startline = 0;
303
				 * so just close the range and return false.
303
                                        lastaddr = 1;
304
				 */
304
                                        r = 1;
305
				cp->startline = 0;
305
                                } else if (cp->a2->type == AT_LINE &&
306
				r = 0;
306
                                            linenum > cp->a2->u.l) {
307
			} else
307
                                        /*
308
				r = 1;
308
                                         * We missed the 2nd address due to a
309
                                         * branch, so just close the range and
310
                                         * return false.
311
                                         */
312
                                        cp->startline = 0;
313
                                        r = 0;
314
                                } else
315
                                        r = 1;
316
                        }
309
		} else if (MATCH(cp->a1)) {
317
		} else if (MATCH(cp->a1)) {
310
			/*
318
			/*
311
			 * If the second address is a number less than or
319
			 * If the second address is a number less than or

Return to bug 192108