summaryrefslogtreecommitdiff
path: root/src/xfns.c
diff options
context:
space:
mode:
authorKenichi Handa <handa@m17n.org>2006-10-31 06:42:59 +0000
committerKenichi Handa <handa@m17n.org>2006-10-31 06:42:59 +0000
commit7147863a1cadafc27dcab1d3f28ccab2224a6316 (patch)
treebf123304c97402e3adb2dc74203a7f3177f044cf /src/xfns.c
parent24b86c51ee4241b16d30db1117c8450710f9ee95 (diff)
downloademacs-7147863a1cadafc27dcab1d3f28ccab2224a6316.tar.gz
emacs-7147863a1cadafc27dcab1d3f28ccab2224a6316.tar.bz2
emacs-7147863a1cadafc27dcab1d3f28ccab2224a6316.zip
(xic_create_xfontset): Fix previous change.
Diffstat (limited to 'src/xfns.c')
-rw-r--r--src/xfns.c44
1 files changed, 26 insertions, 18 deletions
diff --git a/src/xfns.c b/src/xfns.c
index 9f656d4cd7b..8f03d90c796 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -2134,27 +2134,35 @@ xic_create_xfontset (f, base_fontname)
if (!xfs)
{
char *fontsetname = xic_create_fontsetname (base_fontname, False);
- char *p0 = fontsetname, *p1;
/* New fontset. */
- /* FONTSETNAME contains a list of font names (specific fonts
- first, general fonts last), but giving that to XCreateFontSet
- at once occasionally fails (bug of X?). So, we try to call
- XCreateFontSet for each fontname. */
-
- while (p0)
+ xfs = XCreateFontSet (FRAME_X_DISPLAY (f),
+ fontsetname, &missing_list,
+ &missing_count, &def_string);
+ if (missing_list)
+ XFreeStringList (missing_list);
+ if (! xfs)
{
- p1 = strchr (p0, ',');
- if (p1)
- *p1 = '\0';
- xfs = XCreateFontSet (FRAME_X_DISPLAY (f),
- p0, &missing_list,
- &missing_count, &def_string);
- if (missing_list)
- XFreeStringList (missing_list);
- if (xfs)
- break;
- p0 = p1 ? p1 + 1 : NULL;
+ /* FONTSETNAME contains a list of font names (specific fonts
+ first, general fonts last), but giving that to
+ XCreateFontSet at once occasionally fails (bug of X?).
+ So, we try to call XCreateFontSet for each fontname. */
+ char *p0 = fontsetname, *p1;
+
+ while (p0)
+ {
+ p1 = strchr (p0, ',');
+ if (p1)
+ *p1 = '\0';
+ xfs = XCreateFontSet (FRAME_X_DISPLAY (f),
+ p0, &missing_list,
+ &missing_count, &def_string);
+ if (missing_list)
+ XFreeStringList (missing_list);
+ if (xfs)
+ break;
+ p0 = p1 ? p1 + 1 : NULL;
+ }
}
xfree (fontsetname);
}