{
MRealizedFace *rface;
MRealizedFont *rfont;
- MFace merged_face = *frame->face;
+ MFace merged_face = *(frame->face);
void **props;
int i, j;
unsigned tick;
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])
merged_face.property[MFACE_SIZE] = (void *) font_size;
}
- if ((MSymbol) merged_face.property[MFACE_VIDEOMODE] == Mreverse)
- {
- void *background = merged_face.property[MFACE_BACKGROUND];
-
- merged_face.property[MFACE_BACKGROUND]
- = merged_face.property[MFACE_FOREGROUND];
- merged_face.property[MFACE_FOREGROUND] = background;
- }
- 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)
return rface->ascii_rface;
M17N_OBJECT_UNREF (frame->face);
mwin__close_device ((MFrame *) object);
+ free (frame->font);
free (object);
}
MERROR (MERROR_WIN, NULL);
}
- frame->face = mface_copy (mface__default);
+ frame->face = mface_from_font (frame->font);
+ frame->face->property[MFACE_FONTSET] = mfontset (NULL);
+ M17N_OBJECT_REF (mface__default->property[MFACE_FONTSET]);
if (plist)
for (; (key = mplist_key (plist)) != Mnil; plist = mplist_next (plist))
if (key == Mface)