# HG changeset patch # User Kim F. Storm # Date 1138022041 0 # Node ID 2e3377217d771eae937ea26b4f6204755e03b5dc # Parent 585bb942eb2bfe5e38dc39345964b1531b3374f0 (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). diff -r 585bb942eb2b -r 2e3377217d77 src/xdisp.c --- 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;