From: handa Date: Sun, 14 Mar 2004 23:54:55 +0000 (+0000) Subject: *** empty log message *** X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=3a815c81367e7503599fc2e8c13b0630ad151c66;p=m17n%2Fm17n-lib.git *** empty log message *** --- diff --git a/src/face.c b/src/face.c index e1a2bc5..dc42a8f 100644 --- a/src/face.c +++ b/src/face.c @@ -556,7 +556,7 @@ mface__realize (MFrame *frame, MFace **faces, int num, { MRealizedFace *rface; MRealizedFont *rfont; - MFace merged_face = *(frame->face); + MFace merged_face = *frame->face; void **props; int i, j; unsigned tick; @@ -565,6 +565,8 @@ mface__realize (MFrame *frame, MFace **faces, int num, if (num == 0 && language == Mnil && charset == Mnil && frame->rface) return frame->rface; + merged_face.property[MFACE_FOREGROUND] + = merged_face.property[MFACE_BACKGROUND] = NULL; for (i = 0; i < MFACE_PROPERTY_MAX; i++) for (j = num - 1; j >= 0; j--) if (faces[j]->property[i]) @@ -587,12 +589,14 @@ mface__realize (MFrame *frame, MFace **faces, int num, if ((MSymbol) merged_face.property[MFACE_VIDEOMODE] == Mreverse) { - MSymbol foreground = (MSymbol) merged_face.property[MFACE_FOREGROUND]; - MSymbol background = (MSymbol) merged_face.property[MFACE_BACKGROUND]; - + void *background = merged_face.property[MFACE_BACKGROUND]; + + merged_face.property[MFACE_BACKGROUND] + = merged_face.property[MFACE_FOREGROUND]; merged_face.property[MFACE_FOREGROUND] = background; - merged_face.property[MFACE_BACKGROUND] = foreground; } + if (! merged_face.property[MFACE_FONTSET]) + merged_face.property[MFACE_FONTSET] = frame->face->property[MFACE_FONTSET]; rface = find_realized_face (frame, &merged_face, NULL); if (rface && rface->tick == tick)