# HG changeset patch # User Eli Zaretskii # Date 1272206554 -10800 # Node ID 69bfc9e4ceb693e01d9ebe5961d0fc86a76b0995 # Parent 882652fb64a7306a7f44d375f773ea96b972dcfa Fix crash with bidi display on the last empty line (bug#6030). xdisp.c (display_line): Don't assume 2nd call to get_next_display_element cannot return zero. diff -r 882652fb64a7 -r 69bfc9e4ceb6 src/ChangeLog --- a/src/ChangeLog Sat Apr 24 14:07:27 2010 +0300 +++ b/src/ChangeLog Sun Apr 25 17:42:34 2010 +0300 @@ -1,3 +1,8 @@ +2010-04-25 Eli Zaretskii + + * xdisp.c (display_line): Fix crash with bidi display on the last + empty line. (Bug#6030) + 2010-04-24 Eli Zaretskii * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and diff -r 882652fb64a7 -r 69bfc9e4ceb6 src/xdisp.c --- a/src/xdisp.c Sat Apr 24 14:07:27 2010 +0300 +++ b/src/xdisp.c Sun Apr 25 17:42:34 2010 +0300 @@ -17979,9 +17979,8 @@ row_end = it->current; /* If the character at max_pos+1 is a newline, skip that as well. Note that this may skip some invisible text. */ - if (!get_next_display_element (it)) - abort (); - if (ITERATOR_AT_END_OF_LINE_P (it)) + if (get_next_display_element (it) + && ITERATOR_AT_END_OF_LINE_P (it)) { set_iterator_to_next (it, 1); /* Record the position after the newline of a continued