updatedXtermGC(screen, flags, fg_bg, hilite) register TScreen *screen; int flags; int fg_bg; Bool hilite;
updatedXtermGC( register TScreen *screen, int flags, int fg_bg, Bool hilite)
updatedXtermGC(screen, flags, fg_bg, hilite)	register TScreen *screen;	int flags;	int fg_bg;	Bool hilite;{	Pixel fg_pix = getXtermForeground(flags,extract_fg(fg_bg,flags));	Pixel bg_pix = getXtermBackground(flags,extract_bg(fg_bg));#if OPT_HIGHLIGHT_COLOR	Pixel hi_pix = screen->highlightcolor;#endif	GC gc;	if ( (!hilite && (flags & INVERSE) != 0)	  ||  (hilite && (flags & INVERSE) == 0) ) {		if (flags & (BOLD|BLINK))			gc = ReverseBoldGC(screen);		else			gc = ReverseGC(screen);#if OPT_HIGHLIGHT_COLOR		if (hi_pix != screen->foreground		 && hi_pix != fg_pix		 && hi_pix != bg_pix		 && hi_pix != 0) {	/* FIXME: need a reliable undef-Pixel */			bg_pix = fg_pix;			fg_pix = hi_pix;		}#endif		XSetForeground(screen->display, gc, bg_pix);		XSetBackground(screen->display, gc, fg_pix);	} else {		if (flags & (BOLD|BLINK))			gc = NormalBoldGC(screen);		else			gc = NormalGC(screen);		XSetForeground(screen->display, gc, fg_pix);		XSetBackground(screen->display, gc, bg_pix);	}	return gc;}