changeset 68354:2e3377217d77

(handle_single_display_spec): Fix handling of space property on char from string: set *position rather than it->current.pos. (produce_stretch_glyph): Reduce width of stretch glyphs so they don't get wider than the window (unless truncate-lines is on).
author Kim F. Storm <storm@cua.dk>
date Mon, 23 Jan 2006 13:14:01 +0000
parents 585bb942eb2b
children 1f46740719ec
files src/xdisp.c
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/xdisp.c	Mon Jan 23 13:13:42 2006 +0000
+++ b/src/xdisp.c	Mon Jan 23 13:14:01 2006 +0000
@@ -4148,7 +4148,7 @@
 	{
 	  it->method = GET_FROM_STRETCH;
 	  it->object = value;
-	  it->current.pos = it->position = start_pos;
+	  *position = it->position = start_pos;
 	}
 #ifdef HAVE_WINDOW_SYSTEM
       else
@@ -19671,6 +19671,10 @@
   else
     ascent = (height * FONT_BASE (font)) / FONT_HEIGHT (font);
 
+  if (width > 0 && !it->truncate_lines_p
+      && it->current_x + width > it->last_visible_x)
+    width = it->last_visible_x - it->current_x - 1;
+
   if (width > 0 && height > 0 && it->glyph_row)
     {
       Lisp_Object object = it->stack[it->sp - 1].string;