From: handa Date: Mon, 5 Dec 2005 07:06:05 +0000 (+0000) Subject: (mface__realize): Set rfont->layouter to Mnil. X-Git-Tag: REL-1-3-0~35 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=007952ac8bed371568cc8376fe8a7d94a9782509;p=m17n%2Fm17n-lib.git (mface__realize): Set rfont->layouter to Mnil. (mface__for_chars): Fix handling of layouter. --- diff --git a/src/face.c b/src/face.c index 8d6fda3..618b09b 100644 --- a/src/face.c +++ b/src/face.c @@ -726,6 +726,7 @@ mface__realize (MFrame *frame, MFace **faces, int num, int size, MFont *font) { rface->rfont = rfont; rface->layouter = rfont->layouter; + rfont->layouter = Mnil; work_gstring.glyphs[0].rface = rface; work_gstring.glyphs[0].code = MCHAR_INVALID_CODE; mfont__get_metric (&work_gstring, 0, 1); @@ -829,6 +830,7 @@ mface__for_chars (MSymbol script, MSymbol language, MSymbol charset, *new = *rface; new->rfont = rfont; new->layouter = rfont->layouter; + rfont->layouter = Mnil; new->non_ascii_list = NULL; new->ascent = rfont->ascent; new->descent = rfont->descent; @@ -837,8 +839,8 @@ mface__for_chars (MSymbol script, MSymbol language, MSymbol charset, { from_g->rface = new; from_g->code - = (rfont->layouter - ? mfont__flt_encode_char (rfont->layouter, from_g->c) + = (new->layouter + ? mfont__flt_encode_char (new->layouter, from_g->c) : mfont__encode_char (rfont->frame, (MFont *) rfont, NULL, from_g->c)); } @@ -863,7 +865,10 @@ mface__for_chars (MSymbol script, MSymbol language, MSymbol charset, rfont = mfont__lookup_fontset (from_g->rface->rfontset, from_g, &num, script, language, charset, size, 0); if (rfont) - layouter = rfont->layouter; + { + layouter = rfont->layouter; + rfont->layouter = Mnil; + } else { from_g->code = MCHAR_INVALID_CODE;