if (blackouts >= 100) {
if (blackouts >= BLACKR_MAX) {
void initialize_blackout (char *list) {	char *p, *blist = strdup(list);	int x, y, X, Y, h, w;	p = strtok(blist, ", \t");	while (p) {		/* handle +/-x and +/-y */		if (sscanf(p, "%dx%d+%d+%d", &w, &h, &x, &y) == 4) {			;		} else if (sscanf(p, "%dx%d-%d+%d", &w, &h, &x, &y) == 4) {			x = dpy_x - x - w;		} else if (sscanf(p, "%dx%d+%d-%d", &w, &h, &x, &y) == 4) {			y = dpy_y - y - h;		} else if (sscanf(p, "%dx%d-%d-%d", &w, &h, &x, &y) == 4) {			x = dpy_x - x - w;			y = dpy_y - y - h;		} else {			if (*p != '\0') {				rfbLog("skipping invalid geometry: %s\n", p);			}			p = strtok(NULL, ", \t");			continue;		}		X = x + w;		Y = y + h;		if (x < 0 || x > dpy_x || y < 0 || y > dpy_y ||		    X < 0 || X > dpy_x || Y < 0 || Y > dpy_y) {			rfbLog("skipping invalid blackout geometry: %s x="			    "%d-%d,y=%d-%d,w=%d,h=%d\n", p, x, X, y, Y, w, h);		} else {			rfbLog("blackout rect: %s: x=%d-%d y=%d-%d\n", p,			    x, X, y, Y);			/*			 * note that the black out is x1 <= x but x < x2			 * for the region. i.e. the x2, y2 are outside			 * by 1 pixel. 			 */			blackr[blackouts].x1 = x;			blackr[blackouts].y1 = y;			blackr[blackouts].x2 = X;			blackr[blackouts].y2 = Y;			blackouts++;			if (blackouts >= 100) {				rfbLog("too many blackouts: %d\n", blackouts);				break;			}		}		p = strtok(NULL, ", \t");	}	free(blist);}