Mercurial > hg > xemacs-beta
diff src/redisplay-msw.c @ 263:727739f917cb r20-5b30
Import from CVS: tag r20-5b30
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:24:41 +0200 |
parents | 157b30c96d03 |
children | 8efd647ea9ca |
line wrap: on
line diff
--- a/src/redisplay-msw.c Mon Aug 13 10:23:52 2007 +0200 +++ b/src/redisplay-msw.c Mon Aug 13 10:24:41 2007 +0200 @@ -324,6 +324,7 @@ int focus = EQ (w->frame, DEVICE_FRAME_WITH_FOCUS_REAL (d)); HDC hdc = FRAME_MSWINDOWS_DC (f); int real_char_p = (rb->type == RUNE_CHAR && rb->object.chr.ch != '\n'); + unsigned int face_index=0; char *p_char = NULL; int n_char = 0; RECT rect = { xpos, @@ -352,10 +353,8 @@ /* Use cursor fg/bg for block cursor, or character fg/bg for the bar. Output nothing at eol if bar cursor */ - cachel = WINDOW_FACE_CACHEL (w, - (bar_p - ? rb->findex - : get_builtin_face_cache_index (w, Vtext_cursor_face))); + face_index = get_builtin_face_cache_index (w, Vtext_cursor_face); + cachel = WINDOW_FACE_CACHEL (w, (bar_p ? rb->findex : face_index)); mswindows_update_dc (hdc, font, cachel->foreground, cachel->background, Qnil); ExtTextOut (hdc, xpos, dl->ypos, ETO_OPAQUE|ETO_CLIPPED, &rect, p_char, n_char, NULL); @@ -363,8 +362,8 @@ if (focus && bar_p) { rect.right = rect.left + (EQ (bar, Qt) ? 1 : 2); - cachel = WINDOW_FACE_CACHEL (w, - get_builtin_face_cache_index (w, Vtext_cursor_face)); + face_index = get_builtin_face_cache_index (w, Vtext_cursor_face); + cachel = WINDOW_FACE_CACHEL (w, face_index); mswindows_update_dc (hdc, Qnil, Qnil, cachel->background, Qnil); ExtTextOut (hdc, xpos, dl->ypos, ETO_OPAQUE, &rect, NULL, 0, NULL); } @@ -381,8 +380,8 @@ n_char = 1; } - cachel = WINDOW_FACE_CACHEL (w, (real_char_p ? rb->findex - : get_builtin_face_cache_index (w, Vdefault_face))); + face_index = get_builtin_face_cache_index (w, Vdefault_face); + cachel = WINDOW_FACE_CACHEL (w, (real_char_p ? rb->findex : face_index)); mswindows_update_dc (hdc, Qnil, cachel->foreground, cachel->background, Qnil); ExtTextOut (hdc, xpos, dl->ypos, ETO_OPAQUE | ETO_CLIPPED,