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/w32fns.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/w32fns.c')
| -rw-r--r-- | src/w32fns.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/w32fns.c b/src/w32fns.c index 38571d3ec21..ced3d87dd66 100644 --- a/src/w32fns.c +++ b/src/w32fns.c | |||
| @@ -6128,7 +6128,7 @@ Text larger than the specified size is clipped. */) | |||
| 6128 | place the cursor there. Don't include the width of | 6128 | place the cursor there. Don't include the width of |
| 6129 | this glyph. */ | 6129 | this glyph. */ |
| 6130 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; | 6130 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; |
| 6131 | if (INTEGERP (last->object)) | 6131 | if (NILP (last->object)) |
| 6132 | row_width -= last->pixel_width; | 6132 | row_width -= last->pixel_width; |
| 6133 | } | 6133 | } |
| 6134 | else | 6134 | else |
| @@ -6138,7 +6138,7 @@ Text larger than the specified size is clipped. */) | |||
| 6138 | Don't count that glyph. */ | 6138 | Don't count that glyph. */ |
| 6139 | struct glyph *g = row->glyphs[TEXT_AREA]; | 6139 | struct glyph *g = row->glyphs[TEXT_AREA]; |
| 6140 | 6140 | ||
| 6141 | if (g->type == STRETCH_GLYPH && INTEGERP (g->object)) | 6141 | if (g->type == STRETCH_GLYPH && NILP (g->object)) |
| 6142 | { | 6142 | { |
| 6143 | row_width -= g->pixel_width; | 6143 | row_width -= g->pixel_width; |
| 6144 | seen_reversed_p = 1; | 6144 | seen_reversed_p = 1; |
| @@ -6187,7 +6187,7 @@ Text larger than the specified size is clipped. */) | |||
| 6187 | if (row->used[TEXT_AREA] && !row->reversed_p) | 6187 | if (row->used[TEXT_AREA] && !row->reversed_p) |
| 6188 | { | 6188 | { |
| 6189 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; | 6189 | last = &row->glyphs[TEXT_AREA][row->used[TEXT_AREA] - 1]; |
| 6190 | if (INTEGERP (last->object)) | 6190 | if (NILP (last->object)) |
| 6191 | row_width -= last->pixel_width; | 6191 | row_width -= last->pixel_width; |
| 6192 | } | 6192 | } |
| 6193 | 6193 | ||