if (!xdamage_present || !using_xdamage || !use_xdamage_hints) {
if (! xdamage_present || ! use_xdamage) {
int xdamage_hint_skip(int y) {	static sraRegionPtr scanline = NULL;	sraRegionPtr reg, tmpl;	int ret, i, n, nreg;	if (!xdamage_present || !using_xdamage || !use_xdamage_hints) {		return 0;	/* cannot skip */	}	if (! xdamage_regions) {		return 0;	/* cannot skip */	}	if (! scanline) {		scanline = sraRgnCreate();	}	tmpl = sraRgnCreateRect(0, y, dpy_x, y+1);	nreg = (xdamage_memory * NSCAN) + 1;	ret = 1;	for (i=0; i<nreg; i++) {		/* go back thru the history starting at most recent */		n = (xdamage_ticker + nreg - i) % nreg;		reg = xdamage_regions[n];  		if (sraRgnEmpty(reg)) {			/* checking for emptiness is very fast */			continue;		}		sraRgnMakeEmpty(scanline);		sraRgnOr(scanline, tmpl);		if (sraRgnAnd(scanline, reg)) {			ret = 0;			break;		}	}	sraRgnDestroy(tmpl);	return ret;}