diff options
| author | Eli Zaretskii | 2011-10-12 22:07:59 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2011-10-12 22:07:59 +0200 |
| commit | b00eea75d30f4f4a58a8268f8bb1f84c13b06224 (patch) | |
| tree | 69cfa5d7b3f95cc8e0348b5716b1636dbc8aba03 /src | |
| parent | 8fe012c4e6070eb23a864b8f8006849b6e41e2b7 (diff) | |
| download | emacs-b00eea75d30f4f4a58a8268f8bb1f84c13b06224.tar.gz emacs-b00eea75d30f4f4a58a8268f8bb1f84c13b06224.zip | |
Fix bugs #9738 & 9739 with a display string that ends in 2 newlines.
src/xdisp.c (find_row_edges): Handle the case where ROW comes from a
display string and the previous row comes from the same string and
is empty.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/xdisp.c | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 94664833b9b..cf0644ff039 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2011-10-12 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (find_row_edges): Handle the case where ROW comes from a | ||
| 4 | display string and the previous row comes from the same string and | ||
| 5 | is empty. (Bug#9739) (Bug#9738) | ||
| 6 | |||
| 1 | 2011-10-12 Stefan Monnier <monnier@iro.umontreal.ca> | 7 | 2011-10-12 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 8 | ||
| 3 | * doc.c (get_doc_string): Encode file name (bug#9735). | 9 | * doc.c (get_doc_string): Encode file name (bug#9735). |
diff --git a/src/xdisp.c b/src/xdisp.c index b44c2fc765e..01472a6bb02 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -18646,7 +18646,12 @@ find_row_edges (struct it *it, struct glyph_row *row, | |||
| 18646 | seen_this_string = 1; | 18646 | seen_this_string = 1; |
| 18647 | } | 18647 | } |
| 18648 | else | 18648 | else |
| 18649 | abort (); | 18649 | /* If all the glyphs of the previous row were inserted |
| 18650 | by redisplay, it means the previous row was | ||
| 18651 | produced from a single newline, which is only | ||
| 18652 | possible if that newline came from the same string | ||
| 18653 | as the one which produced this ROW. */ | ||
| 18654 | seen_this_string = 1; | ||
| 18650 | } | 18655 | } |
| 18651 | else | 18656 | else |
| 18652 | { | 18657 | { |
| @@ -18662,7 +18667,7 @@ find_row_edges (struct it *it, struct glyph_row *row, | |||
| 18662 | seen_this_string = 1; | 18667 | seen_this_string = 1; |
| 18663 | } | 18668 | } |
| 18664 | else | 18669 | else |
| 18665 | abort (); | 18670 | seen_this_string = 1; |
| 18666 | } | 18671 | } |
| 18667 | } | 18672 | } |
| 18668 | /* Take note of each display string that covers a newline only | 18673 | /* Take note of each display string that covers a newline only |