From: Kenichi Handa Date: Tue, 27 May 2008 01:45:00 +0000 (+0000) Subject: (xfont_open): Fix calculation of font->average_width. X-Git-Tag: emacs-pretest-23.0.90~5273 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4f64a16487a6698413b526236d892c1a3f2da552;p=emacs.git (xfont_open): Fix calculation of font->average_width. --- diff --git a/src/ChangeLog b/src/ChangeLog index e899db277bf..d72f1b54057 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2008-05-27 Kenichi Handa + + * xfont.c (xfont_open): Fix calculation of font->average_width. + 2008-05-27 Stefan Monnier * casefiddle.c (casify_object): Try to guess better whether the diff --git a/src/xfont.c b/src/xfont.c index f84312413ca..e6f0bde5114 100644 --- a/src/xfont.c +++ b/src/xfont.c @@ -613,8 +613,14 @@ xfont_open (f, entity, pixel_size) for (char2b.byte2 = 33; char2b.byte2 <= 126; char2b.byte2++) if ((pcm = xfont_get_pcm (xfont, &char2b)) != NULL) width += pcm->width, n++; - font->average_width = width / n; + if (n > 0) + font->average_width = width / n; } + if (font->average_width == 0) + /* No easy way other than this to get a reasonable + average_width. */ + font->average_width + = (xfont->min_bounds.width + xfont->max_bounds.width) / 2; } BLOCK_INPUT;