diff options
| author | Kim F. Storm | 2006-04-24 00:22:26 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2006-04-24 00:22:26 +0000 |
| commit | 4ec9a7e215e94432892b0663be6c8b734be85c38 (patch) | |
| tree | a6981f6f2a49a51b4030eedad03acf0b9c156080 /src | |
| parent | 6fcd305cf5424abbf3bc5e504c6a83716f56d239 (diff) | |
| download | emacs-4ec9a7e215e94432892b0663be6c8b734be85c38.tar.gz emacs-4ec9a7e215e94432892b0663be6c8b734be85c38.zip | |
Fix last change:
(produce_stretch_glyph): Assume that face box height and width is
already included in stretch glyph size so caller doesn't have to
consider the extra space otherwise added (fixes problem in ses.el).
Diffstat (limited to 'src')
| -rw-r--r-- | src/xdisp.c | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index 9c9031fa443..65b16da76c3 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -19865,30 +19865,12 @@ produce_stretch_glyph (it) | |||
| 19865 | && it->current_x + width > it->last_visible_x) | 19865 | && it->current_x + width > it->last_visible_x) |
| 19866 | width = it->last_visible_x - it->current_x - 1; | 19866 | width = it->last_visible_x - it->current_x - 1; |
| 19867 | 19867 | ||
| 19868 | if (width > 0 && height > 0) | 19868 | if (width > 0 && height > 0 && it->glyph_row) |
| 19869 | { | 19869 | { |
| 19870 | 19870 | Lisp_Object object = it->stack[it->sp - 1].string; | |
| 19871 | if (face->box != FACE_NO_BOX && face->box_line_width != 0) | 19871 | if (!STRINGP (object)) |
| 19872 | { | 19872 | object = it->w->buffer; |
| 19873 | if (face->box_line_width > 0) | 19873 | append_stretch_glyph (it, object, width, height, ascent); |
| 19874 | { | ||
| 19875 | ascent += face->box_line_width; | ||
| 19876 | height += face->box_line_width * 2; | ||
| 19877 | } | ||
| 19878 | |||
| 19879 | if (it->start_of_box_run_p) | ||
| 19880 | width += abs (face->box_line_width); | ||
| 19881 | if (it->end_of_box_run_p) | ||
| 19882 | width += abs (face->box_line_width); | ||
| 19883 | } | ||
| 19884 | |||
| 19885 | if (it->glyph_row) | ||
| 19886 | { | ||
| 19887 | Lisp_Object object = it->stack[it->sp - 1].string; | ||
| 19888 | if (!STRINGP (object)) | ||
| 19889 | object = it->w->buffer; | ||
| 19890 | append_stretch_glyph (it, object, width, height, ascent); | ||
| 19891 | } | ||
| 19892 | } | 19874 | } |
| 19893 | 19875 | ||
| 19894 | it->pixel_width = width; | 19876 | it->pixel_width = width; |