diff options
| author | Eli Zaretskii | 2015-01-08 15:46:23 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2015-01-08 15:46:23 +0200 |
| commit | daa18b5e85559ccea84bd9e8a5f8ac57cfa73189 (patch) | |
| tree | ddf5b50283f72f4bcb96b65ffa7ecba4f6817fbe /src/xfns.c | |
| parent | 0002f31af9d3511b00eaa15590ba824acea99f25 (diff) | |
| download | emacs-daa18b5e85559ccea84bd9e8a5f8ac57cfa73189.tar.gz emacs-daa18b5e85559ccea84bd9e8a5f8ac57cfa73189.zip | |
Fix fallout from "Qnil is zero" change in the display engine. (Bug#19535)
src/xdisp.c (next_element_from_c_string): Use Lisp integer zero as
the object.
(set_cursor_from_row, try_cursor_movement, dump_glyph)
(insert_left_trunc_glyphs, append_space_for_newline)
(extend_face_to_end_of_line, highlight_trailing_whitespace)
(find_row_edges, ROW_GLYPH_NEWLINE_P, Fmove_point_visually)
(Fbidi_resolved_levels, produce_special_glyphs)
(rows_from_pos_range, mouse_face_from_buffer_pos)
(note_mouse_highlight): Use nil as the object for glyphs inserted
by the display engine, and test with NILP instead of INTEGERP.
src/w32fns.c (Fx_show_tip): Use NILP to test for glyphs inserted by
the display engine.
src/xfns.c (Fx_show_tip): Use NILP to test for glyphs inserted by
the display engine.
src/dispextern.h (struct glyph, struct it): Update comments for the
OBJECT members.
Diffstat (limited to 'src/xfns.c')
| -rw-r--r-- | src/xfns.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/xfns.c b/src/xfns.c index d4f96c61b07..4a417526dcd 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -5494,7 +5494,7 @@ Text larger than the specified size is clipped. */) | |||
| 5494 | if (!row->reversed_p) | 5494 | if (!row->reversed_p) |
| 5495 | { | 5495 | { |
| 5496 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; | 5496 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; |
| 5497 | if (INTEGERP (last->object)) | 5497 | if (NILP (last->object)) |
| 5498 | row_width -= last->pixel_width; | 5498 | row_width -= last->pixel_width; |
| 5499 | } | 5499 | } |
| 5500 | else | 5500 | else |
| @@ -5504,7 +5504,7 @@ Text larger than the specified size is clipped. */) | |||
| 5504 | Don't count that glyph. */ | 5504 | Don't count that glyph. */ |
| 5505 | struct glyph *g = row->glyphs[TEXT_AREA]; | 5505 | struct glyph *g = row->glyphs[TEXT_AREA]; |
| 5506 | 5506 | ||
| 5507 | if (g->type == STRETCH_GLYPH && INTEGERP (g->object)) | 5507 | if (g->type == STRETCH_GLYPH && NILP (g->object)) |
| 5508 | { | 5508 | { |
| 5509 | row_width -= g->pixel_width; | 5509 | row_width -= g->pixel_width; |
| 5510 | seen_reversed_p = 1; | 5510 | seen_reversed_p = 1; |
| @@ -5548,7 +5548,7 @@ Text larger than the specified size is clipped. */) | |||
| 5548 | if (row->used[TEXT_AREA] && !row->reversed_p) | 5548 | if (row->used[TEXT_AREA] && !row->reversed_p) |
| 5549 | { | 5549 | { |
| 5550 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; | 5550 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; |
| 5551 | if (INTEGERP (last->object)) | 5551 | if (NILP (last->object)) |
| 5552 | row_width -= last->pixel_width; | 5552 | row_width -= last->pixel_width; |
| 5553 | } | 5553 | } |
| 5554 | 5554 | ||